Tomáš Rylek [Tue, 11 Feb 2020 01:59:53 +0000 (02:59 +0100)]
R2RDump changes for composite R2R format support (#32027)
I have separated the R2RDump-specific changes from my broader
composite R2R change. The gist of the change is becoming able to
read the new "native R2R header" flavor and look up MSIL in
separate DLL's next to the R2R executable.
On top of this basic scheme I have removed the section ID
duplication between ReadyToRunSection.cs and RuntimeHeaders.cs.
I have also slightly cleaned up unnecessary double dictionary
lookups for R2R sections.
For now I have made EH clause parsing work in single-assembly build
mode only, for composite R2R that will require additional changes.
Thanks
Tomas
Jan Kotas [Tue, 11 Feb 2020 01:36:25 +0000 (17:36 -0800)]
Add assert to Unix GCToOSInterface::GetCurrentProcessorNumber for clarity (#32033)
Fixes #31995
Anirudh Agnihotry [Tue, 11 Feb 2020 00:33:55 +0000 (16:33 -0800)]
add fromPackage to exclude properties (#32063)
Egor Chesakov [Tue, 11 Feb 2020 00:23:31 +0000 (16:23 -0800)]
[Arm64] Implement FMA, FMS, MLA, MLS (#31899)
* Add "FusedMultiplyAdd" and "FusedMultiplyAddScalar" in AdvSimd.cs AdvSimd.PlatformNotSupported.cs
* Add "FusedMultiplySubtract" and "FusedMultiplySubtractScalar" in AdvSimd.cs AdvSimd.PlatformNotSupported.cs
* Add "FusedMultiplyAddNegatedScalar" in AdvSimd.cs AdvSimd.PlatformNotSupported.cs
* Add "FusedMultiplySubtractNegatedScalar" in AdvSimd.cs AdvSimd.PlatformNotSupported.cs
* Add "MultiplyAdd" and "MultiplyAddScalar" in AdvSimd.cs AdvSimd.PlatformNotSupported.cs
* Add "MultiplySubtract" and "MultiplySubtractScalar" in AdvSimd.cs AdvSimd.PlatformNotSupported.cs
* Update System.Runtime.Intrinsics.Experimental.cs
* Add fused multiply-add and multiply-subtract intrinsics in hwintrinsiclistarm64.h
* Add "MultiplyAdd" and "MultiplySubtract" in hwintrinsiclistarm64.h
* Implement fused multiply-add and multiply-subtract intrinsics in hwintrinsiccodegenarm64.cpp
* Add fused multiply-add and multiply-subtract intrinsics in GenerateTests.csx
* Mark uses of op2 and op3 of fma, fms, mla, mls intrinsics as delay free in lsraarm64.cpp
* Add "MultiplyAdd" in GenerateTests.csx
* Add "MultiplySubtract" in GenerateTests.csx
* Update AdvSimd/ AdvSimd.Arm64/
* Update Helpers.cs Helpers.tt
Tomas Weinfurt [Tue, 11 Feb 2020 00:20:47 +0000 (16:20 -0800)]
pass Span through Windows PAL (#32008)
* pass Span through Windws PAL
* feedback from review
* feedback from review
* remove missed referenmces to GetBuffer
Sinan Kaya [Mon, 10 Feb 2020 23:56:29 +0000 (18:56 -0500)]
Suppress GCC warning (#32052)
Jan Vorlicek [Mon, 10 Feb 2020 23:39:03 +0000 (00:39 +0100)]
Display stack trace at stack overflow (#31956)
* Display stack trace at stack overflow
This change enables printing stack trace at stack overflow to the
console. In case multiple threads fail with stack overflow in parallel,
only the trace of the first thread is printed.
* Update the stack overflow stack size to use fixed size as a basis rather than
basing it on the virtual page size.
* Rename the AdjustContextForWriteBarrier to AdjustContextForJITHelpers
* Add waiting for the stack overflow stack trace printing completion to
the `EEPolicy::HandleFatalStackOverflow` so that it gets printed
completely even in case of multiple threads failing with stack overflow.
Tomáš Rylek [Mon, 10 Feb 2020 23:23:25 +0000 (00:23 +0100)]
Fix signing in PR runs (#31926)
Make URCT copying unconditional to unblock installer tasks in debug
mode.
Thanks
Tomas
Kirill Frolov [Mon, 10 Feb 2020 23:08:26 +0000 (02:08 +0300)]
Fixed armel/tizen support in build-commons.h (#32043)
This commit adds possibility to build .NET runtime
in Tizen's build environment (32-bit arm, little endian,
soft fp). Two issues was fixed:
1) wrong host os detection (tizen's build system is "armel",
but not "arm");
2) build is allowed not only on "arm", "arm64" and "x64" hosts,
but on "armel" host too.
Fixes #32042
Marco Rossignoli [Mon, 10 Feb 2020 23:05:58 +0000 (00:05 +0100)]
Add MailAddress.TryCreate api (#1052)
* Add TryCreate apis
* address PR feedback
* Update src/libraries/Common/src/System/Net/Mail/MailAddressParser.cs
Co-Authored-By: Stephen Toub <stoub@microsoft.com>
* Update src/libraries/Common/src/System/Net/Mail/DotAtomReader.cs
Co-Authored-By: Stephen Toub <stoub@microsoft.com>
* Update src/libraries/Common/src/System/Net/Mail/MailAddressParser.cs
Co-Authored-By: Stephen Toub <stoub@microsoft.com>
* Address PR feedback, split TryParse parameters for better visibility
* Address PR feedback, add return api documentation, update code comments
* set out parameter when we have result
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Tomáš Rylek [Mon, 10 Feb 2020 22:29:08 +0000 (23:29 +0100)]
SuperIlc changes for composite build mode support (#32028)
This change mostly modifies CompilerRunner to support processes
with multiple input paths so that we can run a single Crossgen2
compilation over a larger set of input files. Based on the latest
iteration of my overall composite R2R support change I have now
made it such that SuperIlc passes the framework assemblies to
Crossgen2 using the "-u" option which means "use as input but
don't automatically root all methods in the module i.o.w. compile
only what is transitively reachable from the test app input modules".
Thanks
Tomas
Eric Erhardt [Mon, 10 Feb 2020 22:18:36 +0000 (16:18 -0600)]
Remove Daily Builds section (#32057)
This section has been out of date since the repo consolidation. The Master column is from November - the last build from core-setup. The other columns don't make sense for this repo, since we don't service those releases from dotnet/runtime.
We can bring this table back when we get a way to keep the links up to date. See #32055 for tracking that.
Tomáš Rylek [Mon, 10 Feb 2020 20:16:19 +0000 (21:16 +0100)]
Add a Windows Arm64 job to the runtime innerloop pipeline (#2095)
Also adds exclusion clause for two failing JIT tests.
Carol Eidt [Mon, 10 Feb 2020 20:15:11 +0000 (12:15 -0800)]
Allow TYP_SIMD8 to be enregistered (#811)
Allow TYP_SIMD8 to be enregistered
Fix #539
Jo Shields [Mon, 10 Feb 2020 19:42:44 +0000 (14:42 -0500)]
Enable builds of mono VM with LLVM JIT
The meta-package for LLVM dependencies will be done as a follow up
Alexander Köplinger [Mon, 10 Feb 2020 18:40:38 +0000 (19:40 +0100)]
Remove monodis from mono sources (#32031)
It's not needed for dotnet/runtime and was already disabled in the build.
Tomas Weinfurt [Mon, 10 Feb 2020 18:39:38 +0000 (10:39 -0800)]
use TestHelper to create client and server stream (#32007)
dotnet-maestro[bot] [Mon, 10 Feb 2020 17:53:36 +0000 (09:53 -0800)]
[master] Update dependencies from dotnet/arcade (#31917)
* Update dependencies from https://github.com/dotnet/arcade build
20200206.12
- Microsoft.DotNet.XUnitExtensions - 5.0.0-beta.20106.12
- Microsoft.DotNet.VersionTools.Tasks - 5.0.0-beta.20106.12
- Microsoft.DotNet.ApiCompat - 5.0.0-beta.20106.12
- Microsoft.DotNet.Arcade.Sdk - 5.0.0-beta.20106.12
- Microsoft.DotNet.Build.Tasks.Configuration - 5.0.0-beta.20106.12
- Microsoft.DotNet.Build.Tasks.Feed - 5.0.0-beta.20106.12
- Microsoft.DotNet.Build.Tasks.Packaging - 5.0.0-beta.20106.12
- Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk - 5.0.0-beta.20106.12
- Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk - 5.0.0-beta.20106.12
- Microsoft.DotNet.CodeAnalysis - 5.0.0-beta.20106.12
- Microsoft.DotNet.GenAPI - 5.0.0-beta.20106.12
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.20106.12
- Microsoft.DotNet.GenFacades - 5.0.0-beta.20106.12
- Microsoft.DotNet.Helix.Sdk - 5.0.0-beta.20106.12
- Microsoft.DotNet.RemoteExecutor - 5.0.0-beta.20106.12
* Update dependencies from https://github.com/dotnet/arcade build
20200207.14
- Microsoft.DotNet.XUnitExtensions - 5.0.0-beta.20107.14
- Microsoft.DotNet.VersionTools.Tasks - 5.0.0-beta.20107.14
- Microsoft.DotNet.ApiCompat - 5.0.0-beta.20107.14
- Microsoft.DotNet.Arcade.Sdk - 5.0.0-beta.20107.14
- Microsoft.DotNet.Build.Tasks.Configuration - 5.0.0-beta.20107.14
- Microsoft.DotNet.Build.Tasks.Feed - 5.0.0-beta.20107.14
- Microsoft.DotNet.Build.Tasks.Packaging - 5.0.0-beta.20107.14
- Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk - 5.0.0-beta.20107.14
- Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk - 5.0.0-beta.20107.14
- Microsoft.DotNet.CodeAnalysis - 5.0.0-beta.20107.14
- Microsoft.DotNet.GenAPI - 5.0.0-beta.20107.14
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.20107.14
- Microsoft.DotNet.GenFacades - 5.0.0-beta.20107.14
- Microsoft.DotNet.Helix.Sdk - 5.0.0-beta.20107.14
- Microsoft.DotNet.RemoteExecutor - 5.0.0-beta.20107.14
* Update dependencies from https://github.com/dotnet/arcade build
20200208.2
- Microsoft.DotNet.XUnitExtensions - 5.0.0-beta.20108.2
- Microsoft.DotNet.VersionTools.Tasks - 5.0.0-beta.20108.2
- Microsoft.DotNet.ApiCompat - 5.0.0-beta.20108.2
- Microsoft.DotNet.Arcade.Sdk - 5.0.0-beta.20108.2
- Microsoft.DotNet.Build.Tasks.Configuration - 5.0.0-beta.20108.2
- Microsoft.DotNet.Build.Tasks.Feed - 5.0.0-beta.20108.2
- Microsoft.DotNet.Build.Tasks.Packaging - 5.0.0-beta.20108.2
- Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk - 5.0.0-beta.20108.2
- Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk - 5.0.0-beta.20108.2
- Microsoft.DotNet.CodeAnalysis - 5.0.0-beta.20108.2
- Microsoft.DotNet.GenAPI - 5.0.0-beta.20108.2
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.20108.2
- Microsoft.DotNet.GenFacades - 5.0.0-beta.20108.2
- Microsoft.DotNet.Helix.Sdk - 5.0.0-beta.20108.2
- Microsoft.DotNet.RemoteExecutor - 5.0.0-beta.20108.2
* Update dependencies from https://github.com/dotnet/arcade build
20200209.1
- Microsoft.DotNet.XUnitExtensions - 5.0.0-beta.20109.1
- Microsoft.DotNet.VersionTools.Tasks - 5.0.0-beta.20109.1
- Microsoft.DotNet.ApiCompat - 5.0.0-beta.20109.1
- Microsoft.DotNet.Arcade.Sdk - 5.0.0-beta.20109.1
- Microsoft.DotNet.Build.Tasks.Configuration - 5.0.0-beta.20109.1
- Microsoft.DotNet.Build.Tasks.Feed - 5.0.0-beta.20109.1
- Microsoft.DotNet.Build.Tasks.Packaging - 5.0.0-beta.20109.1
- Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk - 5.0.0-beta.20109.1
- Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk - 5.0.0-beta.20109.1
- Microsoft.DotNet.CodeAnalysis - 5.0.0-beta.20109.1
- Microsoft.DotNet.GenAPI - 5.0.0-beta.20109.1
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.20109.1
- Microsoft.DotNet.GenFacades - 5.0.0-beta.20109.1
- Microsoft.DotNet.Helix.Sdk - 5.0.0-beta.20109.1
- Microsoft.DotNet.RemoteExecutor - 5.0.0-beta.20109.1
Stephen Toub [Mon, 10 Feb 2020 16:45:28 +0000 (08:45 -0800)]
Rename COREFX_ to DOTNET_TEST_ in test code/scripts (#31967)
Eirik Tsarpalis [Mon, 10 Feb 2020 16:30:25 +0000 (16:30 +0000)]
Nullable annotate System.IO.Pipes (#31918)
* annotate System.IO.Pipes
* update Stream override method signatures
Stephen Toub [Mon, 10 Feb 2020 16:04:55 +0000 (08:04 -0800)]
Annotate System.Net.NameResolution for nullable reference types (#32011)
Stephen Toub [Mon, 10 Feb 2020 16:04:38 +0000 (08:04 -0800)]
Annotate System.Net.ServicePoint for nullable reference types (#32012)
Tomas Weinfurt [Mon, 10 Feb 2020 07:05:34 +0000 (23:05 -0800)]
move ArrayBuffer to Common (#32002)
* move ArrayBuffer to Common
* remove old reference to ArrayBuffer.cs
Tomáš Rylek [Sun, 9 Feb 2020 20:52:31 +0000 (21:52 +0100)]
Fix for runtime-live-build break per Santi's suggestion (#31999)
Stephen Toub [Sun, 9 Feb 2020 15:15:07 +0000 (10:15 -0500)]
Delete [SuppressMessage(...)] attributes for old/defunct/unused rules (#31966)
Jan Kotas [Sun, 9 Feb 2020 12:03:08 +0000 (04:03 -0800)]
Make EqualityComparer thread-safe for Mono (#31990)
* Make EqualityComparer thread-safe for Mono
Fixes #3009
Fixes #31988
* Use Interlocked.CompareExchange
monojenkins [Sun, 9 Feb 2020 10:27:34 +0000 (05:27 -0500)]
[cxx] Fix C++ build -- int vs. enum. (#31837)
Co-authored-by: Jay Krell <jay.krell@cornell.edu>
Next Turn [Sun, 9 Feb 2020 06:39:39 +0000 (14:39 +0800)]
Fix assembly references in tests (#31986)
* Fix build warnings
* Reference System.Runtime instead of System.Private.CoreLib
* Change to System.Console
* Update C# script
Next Turn [Sun, 9 Feb 2020 05:17:43 +0000 (13:17 +0800)]
Remove BOM from CoreCLR files (#31972)
* Remove BOM from CoreCLR files
* Remove BOM from CoreCLR files
* Revert *.cs files with non-ASCII characters
* Revert *.il files with non-ASCII characters
Co-authored-by: dotnet bot <dotnet-bot@dotnetfoundation.org>
Ganbarukamo41 [Sun, 9 Feb 2020 05:00:30 +0000 (14:00 +0900)]
Update windows-test-instructions.md (#31989)
Update old file path
Stephen Toub [Sun, 9 Feb 2020 01:01:59 +0000 (20:01 -0500)]
Enable CA1827 (use Any() instead of Count() compared to 0) (#31983)
Stephen Toub [Sun, 9 Feb 2020 00:26:26 +0000 (19:26 -0500)]
Update to latest version of analyzer packages (#31982)
Oded Hanson [Sat, 8 Feb 2020 23:12:05 +0000 (01:12 +0200)]
Free memory for outItems array (#31937)
Anirudh Agnihotry [Sat, 8 Feb 2020 20:53:41 +0000 (12:53 -0800)]
make vbproj work (#31950)
Dan Moseley [Sat, 8 Feb 2020 20:20:38 +0000 (12:20 -0800)]
Old repo issue number mapped to new repo issue number (#31981)
* Old repo issue number mapped to new repo issue number
* add explanation
Stephen Toub [Sat, 8 Feb 2020 13:52:12 +0000 (08:52 -0500)]
Use IndexOf for .* in RegexInterpreter/Compiler (#31930)
* Clean up RegexInterpreter
Almost entirely style. A few substantive but small changes:
- Store the TextInfo rather than storing the CultureInfo and accessing the TextInfo virtual property on each call.
- Removed unnecessary resx string that should have been an assert
- Coalesced duplicate case blocks
* Use IndexOf for Notoneloop{atomic} in RegexInterpreter/Compiler
This is primarily to improve the performance of .* loops. We'll now use Span.IndexOf to search for the target character (e.g. \n), rather than the open-coded loop we currently have.
* Address PR feedback
Maxim Lipnin [Sat, 8 Feb 2020 13:47:52 +0000 (16:47 +0300)]
[mono] Review [SkipOnTargetFramework(TargetFrameworkMonikers.Mono...] occurrences (#31920)
* Review test attributes
* Disable System.Threading.Tests.SynchronizationContextTests.WaitNotificationTest with an active issue
Maoni Stephens [Sat, 8 Feb 2020 09:12:16 +0000 (01:12 -0800)]
String Deduplication Design Doc (#31971)
Next Turn [Sat, 8 Feb 2020 06:45:14 +0000 (14:45 +0800)]
Fix build warnings (#31863)
Next Turn [Sat, 8 Feb 2020 06:43:21 +0000 (14:43 +0800)]
Update docs to use the main build script (#31644)
Steve MacLean [Sat, 8 Feb 2020 01:36:33 +0000 (20:36 -0500)]
Add T_CRITICAL_SECTION for cross OS DAC compile (#31908)
* T_CRITICAL_SECTION for DAC
Add T_CRITICAL_SECTION as a cross OS version of CRITICAL_SECTION
Add platform defines for TARGET_<os> as needed.
Add verification code to keep T_CRITICAL_SECTION in sync with CRITICAL_SECTION
* Remove unused CRITICAL_SECTION & PAL_CRITICAL_SECTION fields
Remove LockSemaphore
Place unused field under `#if`
Anirudh Agnihotry [Sat, 8 Feb 2020 01:17:24 +0000 (17:17 -0800)]
Solution Explorer showing netcoreapp5.0-windowsNT file first in case of multiple frameworks (#31948)
* Vy Default show windows targetFramework file in VS
* doing same thing for freebsd Linux netbsd and osx
* missing tag
Stephen Toub [Sat, 8 Feb 2020 01:03:01 +0000 (20:03 -0500)]
Fix nullable annotation for BeginXx AsyncCallback (#31934)
Leandro A. F. Pereira [Sat, 8 Feb 2020 00:29:12 +0000 (16:29 -0800)]
corehost: Build intermediate library to avoid building twice (#2123)
Some files are built twice in the hosting layer, so create two separate
static libraries that are then linked with all targets that need them.
Fixes [core-setup/8276](https://github.com/dotnet/core-setup/issues/8276).
Fadi Hanna [Fri, 7 Feb 2020 23:58:58 +0000 (15:58 -0800)]
Enable generation of deps.json for non-VS builds (#31936)
Marek Safar [Fri, 7 Feb 2020 23:02:23 +0000 (00:02 +0100)]
Clean up more unused methods in System.Private.CoreLib (#31924)
Steve MacLean [Fri, 7 Feb 2020 22:37:26 +0000 (17:37 -0500)]
Fix regression in cross OS DAC compilation (#31901)
Fix DAC cross OS compilations regressions introduced by #31659
Andy Hanson [Fri, 7 Feb 2020 22:30:39 +0000 (17:30 -0500)]
Always fire join events for an rjoin (#651)
Previously, there was an additional check
`if (!join_struct.wait_done)` at the beginning of an rjoin.
This usually had no effect as the join isn't usually done yet. But if
thread A is the first to enter the join and finishes before thread B
starts, then B will never enter the `if`.
The only effect this had was that B would not fire join events in these
rare cases. (After that we check `join_struct.wait_done` again anyway.)
As of this PR we will always fire the events, which makes them easier
to analyze consistently.
Before this PR, looking at the join events for a single thread would show
no traces of the rjoin happening, except for an extra restart event from
the other thread.
Jeremy Koritzinsky [Fri, 7 Feb 2020 21:38:56 +0000 (13:38 -0800)]
Fix using the nopgooptimize flag in the CoreCLR build scripts. (#31931)
* Only try to resolve PGO package path when PGOOptimize is enabled.
* Don't resolve PGO files unless we're optimizing with PGO.
* Only get the PgoDataPackagePath whne PGOOptimize is enabled.
Anirudh Agnihotry [Fri, 7 Feb 2020 21:21:08 +0000 (13:21 -0800)]
Build package baseline package only during all config (#31929)
* build package baseline package only during all config
* deleteing packageBaseline package
Andrew Au [Fri, 7 Feb 2020 19:36:29 +0000 (11:36 -0800)]
Avoid using a spinlock when WeakReference finalization is called by the GC (#2474)
buyaa-n [Fri, 7 Feb 2020 18:38:52 +0000 (10:38 -0800)]
Annotate System.IO.FileSystem.AccessControl for nullable (#31780)
* Annotate System.IO.FileSystem.AccessControl for nullable
* Enabling nullable in ref, removign unneeded bangs
* Remove <Nullable>annotations
* Update formatting
Adeel Mujahid [Fri, 7 Feb 2020 18:37:10 +0000 (20:37 +0200)]
Fix FreeBSD native build (#31865)
Carlos Sanchez Lopez [Fri, 7 Feb 2020 18:33:32 +0000 (10:33 -0800)]
Change corefx to runtime in API Review Process document (#31928)
Elinor Fung [Fri, 7 Feb 2020 18:23:23 +0000 (10:23 -0800)]
Document about possible options for localization (#31824)
buyaa-n [Fri, 7 Feb 2020 18:13:08 +0000 (10:13 -0800)]
Annotate System.IO.IsolatedStorage for nullable (#31835)
* Annotate System.IO.IsolatedStorage for nullable
Andrew Au [Fri, 7 Feb 2020 18:10:17 +0000 (10:10 -0800)]
Clarify what runtime function means (#31925)
Ryan Lucia [Fri, 7 Feb 2020 16:18:40 +0000 (11:18 -0500)]
[loader] Set domain->entry_assembly earlier in startup (#31814)
When locating AppContext.BaseDirectory on netcore, if APP_CONTEXT_BASE_DIRECTORY is not set we call into the runtime for a fallback location, which checks domain->entry_assembly. On legacy this is fine because we set that property in `prepare_thread_to_exec_main`, but on netcore the new managed assembly loading algorithm will call into managed and check the property before that function is run, which will result in AppContext.BaseDirectory returning an empty string. The solution is to set entry_assembly a bit earlier in initialization. This is the appropriate location because it's what embedding API users will call to run an assembly.
In the process, remove some code that would bypass the usual lookup algorithm unnecessarily.
Next Turn [Fri, 7 Feb 2020 16:03:36 +0000 (00:03 +0800)]
Fix encodings (#31907)
Adeel Mujahid [Fri, 7 Feb 2020 15:26:34 +0000 (17:26 +0200)]
Set scan-build in init-compiler (#31915)
`desired_version` lives in `init-compiler.sh`.
Also clear the existing CC and CXX preset by environment to avoid unexpected overriding. (the only way to override compiler tools is using CLR_* vars: CLR_CC, CLR_CXX, CLR_AR and so on)
Alexander Köplinger [Fri, 7 Feb 2020 15:09:36 +0000 (16:09 +0100)]
[System.IO.Compression] Reenable tests that were disabled on Jenkins CI (#31913)
Should work fine on Azure Pipelines.
Stephen Toub [Fri, 7 Feb 2020 11:16:59 +0000 (06:16 -0500)]
Annotate System.Net.WebSockets for nullable reference types (#31875)
Alexander Köplinger [Fri, 7 Feb 2020 10:01:38 +0000 (11:01 +0100)]
Extract detecting CC/CXX into helper script so we can use it from mono.proj (#31854)
* Fix typo in gen-buildsys.sh
compier -> compiler
* Extract detecting CC/CXX into helper script so we can use it from mono.proj
* Rename detect-compiler.sh to init-compiler.sh
Michal Strehovský [Fri, 7 Feb 2020 09:31:11 +0000 (10:31 +0100)]
Revert "Ensure using the given executable path. (dotnet/coreclr#10525)" (#31848)
Reverts dotnet/coreclr#10525.
This broke probing for .ni.exe images. If we run `corerun foo.exe` for something that has a `foo.ni.exe`, we wouldn't pick up the native image because foo.exe is considered trusted and foo.ni.exe is not. This means we would fall back to JIT. But only if foo.exe is not in CORE_ROOT. If it is, it works...
The pull request broke crossgen testing that was eventually worked around in dotnet/coreclr#11272, but it's also breaking the tests in tests\src\readytorun\tests (we just didn't find out because they're falling back to JIT). We could work around there too, but this took half a day for me to investigate, so I don't want to leave the landmine there for someone else to lose a leg over (the fact that ni probing works if you put the exe and ni.exe into CORE_ROOT was a major timesink when troubleshooting).
I don't see much point in this change. It's fixing the case when someone copied something.exe to CORE_ROOT and then tries to `corerun some\other\version\of\something.exe`, but it doesn't fix the situation when the something.exe depends on dependency.dll - we would still pick up dependency.dll from CORE_ROOT, which is likely the wrong version. The only way to win this game is not to play it - don't put stuff in CORE_ROOT.
monojenkins [Fri, 7 Feb 2020 06:28:53 +0000 (01:28 -0500)]
[merp] Add an exception type for managed exceptions (#31678)
Addresses https://github.com/mono/mono/issues/18681
Co-authored-by: Alexis Christoforides <alexis@thenull.net>
monojenkins [Fri, 7 Feb 2020 06:28:00 +0000 (01:28 -0500)]
[merp] Add tests for crashing via POSIX signal (#2163)
Co-authored-by: Alexis Christoforides <alexis@thenull.net>
Stephen Toub [Fri, 7 Feb 2020 04:51:15 +0000 (23:51 -0500)]
Use char.GetUnicodeCategory in RegexCompiler for single Unicode categories (#31881)
Santiago Fernandez Madero [Fri, 7 Feb 2020 04:16:16 +0000 (20:16 -0800)]
Disable warnaserror for Windows (#31909)
Machines were updated to a newer VS 16.4 but CMake is 3.15.1 which is too old for VS validation of incremental native targets. We need 3.15.5 at least.
Anirudh Agnihotry [Fri, 7 Feb 2020 03:08:07 +0000 (19:08 -0800)]
Addressing Minor Cleanup (#31845)
* addressing viktor feedback
* Update System.Reflection.Emit.ILGeneration.csproj
* Update tests.proj
* Update System.Reflection.Emit.Lightweight.csproj
* Update System.Xml.XPath.XDocument.Tests.csproj
* fixing emit projects, making them similar before config change
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Cory Nelson [Fri, 7 Feb 2020 00:12:04 +0000 (16:12 -0800)]
Add QuicConnection.IsQuicSupported for runtime feature detection (#31689)
Add QuicConnection.IsQuicSupported for runtime feature detection, and update tests to use it.
Andrew Au [Thu, 6 Feb 2020 22:16:31 +0000 (14:16 -0800)]
Tweaking the joined_condemned_reason implementation (#31726)
Santiago Fernandez Madero [Thu, 6 Feb 2020 22:04:51 +0000 (14:04 -0800)]
Disable warnAsError from official builds to workaround cmake issue (#31890)
Steve MacLean [Thu, 6 Feb 2020 21:55:05 +0000 (16:55 -0500)]
Configure Host OS APIs based on HOST macros (#31774)
* Use gcenv.windows.inl on Windows HOSTS
* Make two way pipe implementation depend on host
We have no ability to implement a cross OS pipe. Allow the
two way pipe implentation depend on the host.
* Use empty debug macro implementation on Windows hosts.
* Make HMODULE type depend on host compiler
* Configure long file path wrappers based on host
* Configure memcpy based on host
* Configure FreeLibrary based on host
* Configure host utility funtion based on host
VirtualAlloc, CPU count, NUMA config make most sense as host
queries. Configure based on host.
* Configure exceptiion holder based on host
* Prefer #if HOST_WINDOWS for longfilepathwrappers.cpp
* Prefer #if HOST_WINDOWS for src/coreclr/src/inc/holder.h
* Do not include GCToOSInterface::GetPageSize() in DAC
* Remove JIT64_BUILD
* !HOST_UNIX -> HOST_WINDOWS
Andy Ayers [Thu, 6 Feb 2020 21:17:05 +0000 (13:17 -0800)]
JIT: add back no side effect check when optimizing return values (#31836)
Feedback from #31699.
Steve Pfister [Thu, 6 Feb 2020 21:15:50 +0000 (16:15 -0500)]
[mono] Enable debugging for netcore configurations by default. (#31683)
What this means is:
1. --debug is no longer needed since the default is TRUE
2. --debug=ignore is a new switch to go back to the old mono default
Fixes https://github.com/dotnet/runtime/issues/31662
Santiago Fernandez Madero [Thu, 6 Feb 2020 20:48:32 +0000 (12:48 -0800)]
Disable crypto tests affected by libssl in OSX (#31879)
Santiago Fernandez Madero [Thu, 6 Feb 2020 20:31:50 +0000 (12:31 -0800)]
Update SkipOnCoreClrAttributes to RuntimeConfiguration argument (#31847)
* Update SkipOnCoreClrAttributes to RuntimeConfiguration argument
* Update XunitExtensions
* Fix bad merge
Tomas Weinfurt [Thu, 6 Feb 2020 20:18:55 +0000 (12:18 -0800)]
fix FileSystemWatcher_Unix_DoesNotLeak test (#2296)
* fix FileSystemWatcher_Unix_DoesNotLeak test
* feedback
* feedback from review
Steve MacLean [Thu, 6 Feb 2020 19:47:33 +0000 (14:47 -0500)]
Fix JIT TARGET usage (#31740)
* Fix JIT TARGET usage
Fixes _TARGET* & TARGET*_ comments
Fixes TARGET_XARCH4 reference to TARGET_XARCH
Fixes #31372
* Remove no way assert
* Fix JIT formatting
* Use defined() in optcse.cpp
Mike Rousos [Thu, 6 Feb 2020 19:02:48 +0000 (14:02 -0500)]
Initialize Delimiter from Attributes (#635)
* Initialize Delimiter from Attributes
If a DelimitedListTraceListener has a Delimiter attribute, use it
to initialize the Delimiter unless (and until) a delimiter is set
explicitly.
Also add unit tests for these scenarios.
Fix dotnet/corefx#39363
* Remove var usage
Co-Authored-By: Stephen Toub <stoub@microsoft.com>
* Remove unnecessary initialization
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Viktor Hofer [Thu, 6 Feb 2020 18:19:53 +0000 (19:19 +0100)]
Enable .NET Framework F5 & VS TestExplorer support for libraries (#31873)
* Enable .NET Framework F5 & TestExplorer
Adding a launchSettings profile to enable .NET Framework F5 scenarios.
Also setting the DEVPATH variable for the -vs hook to use the locally
built .NET Framework runtime.
* Set DEVPATH env in F5
Eirik Tsarpalis [Thu, 6 Feb 2020 18:18:48 +0000 (18:18 +0000)]
Nullable annotate System.Diagnostics.Process (#31671)
* nullable annotate System.Diagnostics.Process
* add annotations to unix source files
* annotate remainder of non-windows implementations
* enable nullable annotation for file
* add nullable directive to cgroups.cs
* add missing nullable directives in shared files
* enable nullable annotations for ReusableTextReader
* add missing #nullable enable directives in shared files
* address feedback
* address feedback
* ensure ComputerName property is non-nullable
* assert non-nullability for specific Process.Start() overloads
David Cantu [Thu, 6 Feb 2020 15:54:06 +0000 (07:54 -0800)]
Add specification for ReferenceHandling (#354)
* Add specification for ReferenceHandling
* Address more feedback, corrected types, and included table of contents
* Add missing access modifiers to class properties
Add note about immutable types
* Apply suggestions from code review
Co-Authored-By: Ahson Khan <ahkha@microsoft.com>
* Apply more suggestions from code review
Co-Authored-By: Ahson Khan <ahkha@microsoft.com>
* Add PR suggestions.
* Apply even more suggestions from code review
Co-Authored-By: Ahson Khan <ahkha@microsoft.com>
* Add missing semi colons on samples and standardize error messages on $values
Co-Authored-By: Ahson Khan <ahkha@microsoft.com>
* Address changes discussed on API review
* Add note to describe unsupported round-tripping capability on JsonExtensionData.
* Replace i.e. for e.g. where meant to quote an example.
Co-authored-by: Ahson Khan <ahkha@microsoft.com>
Egor Bogatov [Thu, 6 Feb 2020 15:34:16 +0000 (18:34 +0300)]
[mono] Improve mono.proj, auto-detect build configurations (#31739)
* Auto-detect build configuration in Makefile
* Improve RunCoreClrTests target
* Clone .dotnet to .dotnet-mono
* Implement Console
dotnet-maestro[bot] [Thu, 6 Feb 2020 15:31:11 +0000 (16:31 +0100)]
[master] Update dependencies from dotnet/arcade dotnet/runtime-assets (#31855)
* Update dependencies from https://github.com/dotnet/arcade build
20200205.2
- Microsoft.DotNet.XUnitExtensions - 5.0.0-beta.20105.2
- Microsoft.DotNet.VersionTools.Tasks - 5.0.0-beta.20105.2
- Microsoft.DotNet.ApiCompat - 5.0.0-beta.20105.2
- Microsoft.DotNet.Arcade.Sdk - 5.0.0-beta.20105.2
- Microsoft.DotNet.Build.Tasks.Configuration - 5.0.0-beta.20105.2
- Microsoft.DotNet.Build.Tasks.Feed - 5.0.0-beta.20105.2
- Microsoft.DotNet.Build.Tasks.Packaging - 5.0.0-beta.20105.2
- Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk - 5.0.0-beta.20105.2
- Microsoft.DotNet.Build.Tasks.TargetFramework.Sdk - 5.0.0-beta.20105.2
- Microsoft.DotNet.CodeAnalysis - 5.0.0-beta.20105.2
- Microsoft.DotNet.GenAPI - 5.0.0-beta.20105.2
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.20105.2
- Microsoft.DotNet.GenFacades - 5.0.0-beta.20105.2
- Microsoft.DotNet.Helix.Sdk - 5.0.0-beta.20105.2
- Microsoft.DotNet.RemoteExecutor - 5.0.0-beta.20105.2
* Update dependencies from https://github.com/dotnet/runtime-assets build
20200205.1
- System.Windows.Extensions.TestData - 5.0.0-beta.20105.1
- System.Security.Cryptography.X509Certificates.TestData - 5.0.0-beta.20105.1
- System.Private.Runtime.UnicodeData - 5.0.0-beta.20105.1
- System.Net.TestData - 5.0.0-beta.20105.1
- System.IO.Packaging.TestData - 5.0.0-beta.20105.1
- System.IO.Compression.TestData - 5.0.0-beta.20105.1
- System.Drawing.Common.TestData - 5.0.0-beta.20105.1
- System.ComponentModel.TypeConverter.TestData - 5.0.0-beta.20105.1
Steve MacLean [Thu, 6 Feb 2020 15:24:56 +0000 (10:24 -0500)]
Configure host features based on host OS (#31778)
* Configure eventtracing based on host
* Configure DumpDiagnosticProtocolHelper based on host
* Configure streeslog based on host
* Use HOST_UNIX to configure eventtrace.cpp
Elinor Fung [Thu, 6 Feb 2020 15:22:23 +0000 (07:22 -0800)]
Intermittent crash in comhost tests (#31830)
Jan Kotas [Thu, 6 Feb 2020 15:18:46 +0000 (07:18 -0800)]
Fix System.Data.SqlClient tests on Alpine (#31850)
System.Data.SqlClient package reference in tests is restoring wrong flavor of System.Data.SqlClient in some cases (Alpine, Mono). Switch back to copying System.Data.SqlClient to testhost.
monojenkins [Thu, 6 Feb 2020 11:23:38 +0000 (06:23 -0500)]
Reduce number of mono header files copied into SDK include folder (MSVC build). (#31725)
Current script, libmono.bat, copied all metadata headers into include folder. This folder is used up by some other distribution as include folder. Fix makes sure we copy the same number of header files as we do in our make files scripts.
Co-authored-by: Johan Lorensson <lateralusx.github@gmail.com>
Jan Kotas [Thu, 6 Feb 2020 07:46:00 +0000 (23:46 -0800)]
Revert "Save stack arguments size in InlinedCallFrame.m_Datum on x86 to handle callee's popping of arguments (#26834)" (#31811)
This reverts commit
d4c26281bd5859e318e245c371d8056a0bc51d28.
Ahson Khan [Thu, 6 Feb 2020 05:39:11 +0000 (21:39 -0800)]
Make sure original Utf8JsonReader options are honored when re-creating the reader. (#31791)
* Add some unit tests.
* Test clean uTest clean up.
* Make sure original Utf8JsonReader options are honored when re-creating the
reader.
Roman Marusyk [Thu, 6 Feb 2020 05:31:05 +0000 (07:31 +0200)]
Use RuntimeHelpers.GetHashCode instead of obj.GetHashCode (#31756)
* Use RuntimeHelpers.GetHashCode instead of obj.GetHashCode
* Fix unit test
* Code review fixes
* Code review fixes
* Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/ReferenceEqualsEqualityComparer.cs
Co-Authored-By: David Cantu <jozkyy@gmail.com>
Co-authored-by: David Cantu <jozkyy@gmail.com>
Anirudh Agnihotry [Thu, 6 Feb 2020 05:24:08 +0000 (21:24 -0800)]
New Configuration System (#1787)
* libraries -restore for vertical build without test restore
* Automatic test change and regex to remove the addition of an extra line at eof
* manual test restore fixed (restore completely done for vertical build)
* build native done
* Automatic ref change and regex to remove the last line
* manual reference assebly change and generated shims build
* automatic src change and regex
* native bin place and src build manual change
* apicompat and pretest.csproj done
* fixing the package build
* fixing all config
* packaging and feedback
* adding back placeholder configuration
* fixing the shims
* delete configuration.props
* making the build work in master
* Test Change
* fixing the packageing, test restore replacing TargetFramework -> OriginalTargetFramework
* delete test configuraiton.props, trailing semicolon and use targetFramework
* reverting the package change
* enable apicompat and fixing configurationGroup for individual projects
* fixing the api compat
* making ilproj work
* adding the outerBuildTest
* adding the arcade package version
* fixing the merge conflicts
* minor changes
* adding additional configs and setting the runtimeOS
* making the vs stuff work
* removing the target Group to fix the apicompat
* fixing the linux build and some minor changes
* making additionalBuildTargetFramework LOcalProperty
* fixing the allConfigurations build
* fixing the netfx build
* fixing package Testing and restore
* Missing TargetFrameworks tag
* making the VSdesgin stuff work
* Remove OriginalFramework Entirely
* some minor pr feedback
* RemoveExtraSemicolon
* use boolean exclude flag
* fixing yml scripts to pass tests
* adding comments and some minor feedback
* moving packaging property to correct plave
* fixing the build for web assembly
* Fixing the live ci build
* Fixing the live build for shims
* fixing the tests
* fixing the packaging and enterprise linux
* fixing package sizes
* Fix the targetFramework
* updating the targetFramework sdl
* removing the buildOS and be able to use OSGroup as done in the old system
* Fixing the osgroup stuff for send to helix task
* Fix OSX failures
* Fixing the osx build
* uploading tmp folder to artifacts
* running restore for runtime.deproj correctly
Levi Broderick [Thu, 6 Feb 2020 04:49:11 +0000 (20:49 -0800)]
Fix incorrect early exit in SortKey.Compare and seal type (#31779)
Also addresses some erroneous parameter checking in GetHashCode and fixes endianness issues in InvariantCreateSortKey
Levi Broderick [Thu, 6 Feb 2020 02:50:38 +0000 (18:50 -0800)]
Nullability: RuntimeHelpers.GetHashCode should accept null obj input (#31819)
Andy Ayers [Thu, 6 Feb 2020 02:34:15 +0000 (18:34 -0800)]
JIT: rework phase objects so we can use them more widely (#31808)
Next part of #2109.
Add support for phases that are simply compiler methods or lambdas. These are
not used yet -- the plan is to introduce new phases gradually, cleaning up
redundant checking and dumping along the way. This will happen in subsequent
changes.
Remove a bit of now-redundant post-phase dumping and checking from lower.
Add the active phase to the assertion text, so we have some context.
monojenkins [Thu, 6 Feb 2020 01:22:07 +0000 (20:22 -0500)]
[interp] Make call_vararg non-recursive. (#31722)
[interp] Remove recursion from call_vararg.
This contributes to https://github.com/mono/mono/issues/18646 but is not enough to fix it.
You also have to fix newobj_fast, but that is apparently a bit difficult.
This is a reduced form of https://github.com/mono/mono/pull/18670, i.e. punting newobj_fast for now.
Co-authored-by: Jay Krell <jay.krell@cornell.edu>
Adeel Mujahid [Thu, 6 Feb 2020 00:50:05 +0000 (02:50 +0200)]
Use common CLR_CMAKE_* variables in more places (#31659)
* Use common CLR_CMAKE_* variables in more places
* Remove obsolete paragraph from README
Santiago Fernandez Madero [Thu, 6 Feb 2020 00:17:28 +0000 (16:17 -0800)]
Update SkipOnCoreClr in RunContinueWithStressTestsNoState test (#31826)
Steve MacLean [Thu, 6 Feb 2020 00:07:19 +0000 (19:07 -0500)]
Fix arm64singlestepper #ifdef (#31776)