platform/upstream/dotnet/runtime.git
16 months agoDo not say the wrong default behavior for blittable arrays in ComInterfaceGenerator...
Jackson Schuster [Thu, 13 Jul 2023 16:16:13 +0000 (09:16 -0700)]
Do not say the wrong default behavior for blittable arrays in ComInterfaceGenerator warning (#88212)

The warning used to say the default is [In] for blittable arrays, when the default is [In, Out].

Reworks how Unnecessary / Not supported / supported [In, Out] diagnostic reporting is implemented. Each marshaller will decide which details are provided with the diagnostic and which attributes are unnecessary.

Shares a single Strings.resx with all projects. "Com" or "LibraryImport" suffixes were added to string names that conflicted.

Co-authored-by: Jeremy Koritzinsky <jekoritz@microsoft.com>
16 months agoEnsure Vector256.Dot produces a V256 result (#88712)
Tanner Gooding [Thu, 13 Jul 2023 16:11:59 +0000 (09:11 -0700)]
Ensure Vector256.Dot produces a V256 result (#88712)

* Ensure Vector256.Dot produces a V256 result

* Apply formatting patch

16 months agoDon't generate Unmanaged-to-Managed stubs with diagnostics (#88679)
Jeremy Koritzinsky [Thu, 13 Jul 2023 16:10:31 +0000 (09:10 -0700)]
Don't generate Unmanaged-to-Managed stubs with diagnostics (#88679)

16 months agoDeduplicate diagnostics emitted for managed->unmanaged and unmanaged->managed stubs...
Jeremy Koritzinsky [Thu, 13 Jul 2023 16:08:56 +0000 (09:08 -0700)]
Deduplicate diagnostics emitted for managed->unmanaged and unmanaged->managed stubs (#88803)

16 months agoAdd Keyed Services Support to Dependency Injection (#87183)
Benjamin Petit [Thu, 13 Jul 2023 15:58:48 +0000 (17:58 +0200)]
Add Keyed Services Support to Dependency Injection (#87183)

16 months agoEnsure DOTNET_MaxVectorTBitwidth is interpreted as a decimal based input, not hexadec...
Tanner Gooding [Thu, 13 Jul 2023 15:58:25 +0000 (08:58 -0700)]
Ensure DOTNET_MaxVectorTBitwidth is interpreted as a decimal based input, not hexadecimal (#88761)

* Ensure DOTNET_MaxVectorTBitwidth is interpreted as a decimal based input, not hexadecimal

* Use CLRConfig::LookupOptions::ParseIntegerAsBase10 instead

16 months ago[browser] Migrate more Blazor features, prepare JavaScript API for Blazor cleanup...
Marek Fišera [Thu, 13 Jul 2023 15:32:58 +0000 (17:32 +0200)]
[browser] Migrate more Blazor features, prepare JavaScript API for Blazor cleanup (#87959)

* Lazy assembly loading
* Satellite assembly loading
* Library initializers
* API cleanup
* WBT for new features

16 months agoJSON: Add support for {ReadOnly}Memory<T> (#88713)
David Cantú [Thu, 13 Jul 2023 15:01:51 +0000 (10:01 -0500)]
JSON: Add support for {ReadOnly}Memory<T> (#88713)

* Add support for {ReadOnly}Memory

* Address feedback

* Remove unintentional comment

* Register {ReadOnly}MemoryByteType as a known built-in type

16 months agoSkip RC2 encrypted PKCS12 files on Android for iteration counting
Kevin Jones [Thu, 13 Jul 2023 14:28:52 +0000 (10:28 -0400)]
Skip RC2 encrypted PKCS12 files on Android for iteration counting

16 months agorevert active issue https://github.com/dotnet/runtime/pull/88728 (#88831)
Pavel Savara [Thu, 13 Jul 2023 14:21:55 +0000 (16:21 +0200)]
revert active issue https://github.com/dotnet/runtime/pull/88728 (#88831)

16 months ago[LoongArch64] Implement Inline TLS field access for LoongArch64. (#88819)
Xu Liangyu [Thu, 13 Jul 2023 13:59:21 +0000 (21:59 +0800)]
[LoongArch64] Implement Inline TLS field access for LoongArch64. (#88819)

16 months ago[mono][tests] Attempt to enable test (#88722)
Vlad Brezae [Thu, 13 Jul 2023 13:31:54 +0000 (16:31 +0300)]
[mono][tests] Attempt to enable test (#88722)

16 months agoWrite perfmap and jitdump files to /tmp by default (#88776)
Tom McDonald [Thu, 13 Jul 2023 10:53:02 +0000 (06:53 -0400)]
Write perfmap and jitdump files to /tmp by default (#88776)

Co-authored-by: David Mason <davmason@microsoft.com>
16 months agoClean up usings in test cases assembly (#88678)
Mike Voorhees [Thu, 13 Jul 2023 10:52:38 +0000 (06:52 -0400)]
Clean up usings in test cases assembly (#88678)

The main goal here is to get rid of the unused `System.Linq` usings.  These cause problems for our UnityLinker tests that run against mono class libraries as it requires an additional reference.  We could work around it by referencing everything in the mono class libraries, which is what illink does during it's tests.  That said, some of the files had a lot of unnecessary usings and I don't think it's a bad thing to clean them up anyways.

Rather than hunt down the 10-20 files that were problematic I ran Rider's namespace clean up functionality on `Mono.Linker.Tests.Cases`

16 months agoEnable the option to invoke APICompat in strict mode for ref-pack servicing (#88707)
Viktor Hofer [Thu, 13 Jul 2023 07:10:54 +0000 (09:10 +0200)]
Enable the option to invoke APICompat in strict mode for ref-pack servicing (#88707)

* Fixes https://github.com/dotnet/runtime/issues/42961

Enable strict mode comparison during servicing when
`ApiCompatNetCoreAppBaselineVersion` is the current .NET version. When
the GA targeting pack is released, that property should be updated which
will turn on strict mode comparison and prohibits the addition of new
API.

Suppressing one error in the baseline file that showed-up because
out-of-band assemblies now being passed in as assembly references.

While at it I also cleaned-up how private assemblies are handled during
the build.

* PR feedback

16 months agoRemove dead code from UnixContext.cpp (#88734)
Filip Navara [Thu, 13 Jul 2023 05:43:32 +0000 (07:43 +0200)]
Remove dead code from UnixContext.cpp (#88734)

16 months agoUse macos12 machines in official build (#88793)
Andy Gocke [Thu, 13 Jul 2023 05:41:24 +0000 (22:41 -0700)]
Use macos12 machines in official build (#88793)

16 months agoBlock newly added failing test (#88714)
Michal Strehovský [Thu, 13 Jul 2023 05:06:48 +0000 (14:06 +0900)]
Block newly added failing test (#88714)

16 months agoAllow passing Int128 to p/invokes by reference (#88651)
Michal Strehovský [Thu, 13 Jul 2023 04:50:52 +0000 (13:50 +0900)]
Allow passing Int128 to p/invokes by reference (#88651)

Fixes #74549.

16 months agoTrim RefSafetyRulesAttribute when trimming aggressively (#88717)
Michal Strehovský [Thu, 13 Jul 2023 04:50:28 +0000 (13:50 +0900)]
Trim RefSafetyRulesAttribute when trimming aggressively (#88717)

This is another attribute that Roslyn uses for its own purposes only.

16 months agoAdd set of attributes that can be trimmed on NAOT (#88718)
Michal Strehovský [Thu, 13 Jul 2023 04:50:00 +0000 (13:50 +0900)]
Add set of attributes that can be trimmed on NAOT (#88718)

These are papercuts but since we have the mechanism for this...

16 months agoRemove `DelegateInvokeStubManager` (#88683)
Aaron Robinson [Thu, 13 Jul 2023 04:20:18 +0000 (21:20 -0700)]
Remove `DelegateInvokeStubManager` (#88683)

* Remove DelegateInvokeStubManager

All Delegate Invoke scenarios now use the StubLinker.
This means there is an inherent confusion between the
two stub managers. Upon further inspection combining
these two by adding a new flag on the Stub class means
they can be combined logically and simplify the code
path by removing a StubManager.

16 months agoJIT: Always consider empty remainders to be dying in physical promotion (#88665)
Jakob Botsch Nielsen [Thu, 13 Jul 2023 03:06:28 +0000 (05:06 +0200)]
JIT: Always consider empty remainders to be dying in physical promotion (#88665)

Liveness takes a few shortcuts that means it doesn't always handle the
case where there is no remainder as the remainder dying, so add a
special case in StructDeaths::IsRemainderDying to take care of this
case.

Some minor improvements from more last-use copy omission are expected.

16 months agoExtend the time out for executing the test with RemoteExecutor (#88786)
Tarek Mahmoud Sayed [Thu, 13 Jul 2023 02:51:49 +0000 (19:51 -0700)]
Extend the time out for executing the test with RemoteExecutor (#88786)

16 months agoCheck-in changes to generated files (#88741)
Mike Voorhees [Thu, 13 Jul 2023 02:34:48 +0000 (22:34 -0400)]
Check-in changes to generated files (#88741)

I don't know anything about this file but when I build illink.sln this file is modified.  I'm guessing these changes should be checked in?

16 months ago[main] Update dependencies from 10 repositories (#88245)
dotnet-maestro[bot] [Thu, 13 Jul 2023 02:09:26 +0000 (21:09 -0500)]
[main] Update dependencies from 10 repositories (#88245)

* Update dependencies from https://github.com/dotnet/arcade build 20230629.1

Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 8.0.0-beta.23328.2 -> To Version 8.0.0-beta.23329.1

Dependency coherency updates

Microsoft.DotNet.XliffTasks
 From Version 1.0.0-beta.23319.1 -> To Version 1.0.0-beta.23326.1 (parent: Microsoft.DotNet.Arcade.Sdk

* Update dependencies from https://github.com/dotnet/sdk build 20230630.3

Microsoft.DotNet.ApiCompat.Task
 From Version 8.0.100-preview.7.23329.3 -> To Version 8.0.100-preview.7.23330.3

* Update dependencies from https://github.com/dotnet/llvm-project build 20230630.2

runtime.linux-arm64.Microsoft.NETCore.Runtime.JIT.Tools , runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.linux-arm64.Microsoft.NETCore.Runtime.ObjWriter , runtime.linux-musl-arm64.Microsoft.NETCore.Runtime.JIT.Tools , runtime.linux-musl-arm64.Microsoft.NETCore.Runtime.ObjWriter , runtime.linux-musl-x64.Microsoft.NETCore.Runtime.JIT.Tools , runtime.linux-musl-x64.Microsoft.NETCore.Runtime.ObjWriter , runtime.linux-x64.Microsoft.NETCore.Runtime.JIT.Tools , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.linux-x64.Microsoft.NETCore.Runtime.ObjWriter , runtime.osx-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.osx-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.osx-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.osx-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.win-arm64.Microsoft.NETCore.Runtime.JIT.Tools , runtime.win-arm64.Microsoft.NETCore.Runtime.ObjWriter , runtime.win-x64.Microsoft.NETCore.Runtime.JIT.Tools , runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.win-x64.Microsoft.NETCore.Runtime.ObjWriter
 From Version 14.0.0-alpha.1.23326.1 -> To Version 16.0.5-alpha.1.23330.2

* Update dependencies from https://github.com/dotnet/arcade build 20230630.1

Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 8.0.0-beta.23328.2 -> To Version 8.0.0-beta.23330.1

Dependency coherency updates

Microsoft.SourceLink.GitHub,Microsoft.DotNet.XliffTasks
 From Version 8.0.0-beta.23314.2 -> To Version 8.0.0-beta.23328.1 (parent: Microsoft.DotNet.Arcade.Sdk

* Update dependencies from https://github.com/dotnet/sdk build 20230630.15

Microsoft.DotNet.ApiCompat.Task
 From Version 8.0.100-preview.7.23329.3 -> To Version 8.0.100-preview.7.23330.15

* Update dependencies from https://github.com/dotnet/runtime build 20230630.6

Microsoft.NET.ILLink.Tasks , Microsoft.NET.Sdk.IL , Microsoft.NETCore.App.Runtime.win-x64 , Microsoft.NETCore.ILAsm , runtime.native.System.IO.Ports , System.Text.Json
 From Version 8.0.0-preview.7.23325.2 -> To Version 8.0.0-preview.7.23330.6

* Update dependencies from https://github.com/dotnet/arcade build 20230703.2

Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 8.0.0-beta.23328.2 -> To Version 8.0.0-beta.23353.2

Dependency coherency updates

Microsoft.SourceLink.GitHub,Microsoft.DotNet.XliffTasks
 From Version 8.0.0-beta.23314.2 -> To Version 8.0.0-beta.23330.1 (parent: Microsoft.DotNet.Arcade.Sdk

* Update dependencies from https://github.com/dotnet/icu build 20230703.1

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 8.0.0-preview.7.23326.2 -> To Version 8.0.0-preview.7.23353.1

* Update dependencies from https://github.com/dotnet/hotreload-utils build 20230703.3

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 8.0.0-alpha.0.23326.2 -> To Version 8.0.0-alpha.0.23353.3

* Update dependencies from https://github.com/dotnet/sdk build 20230704.2

Microsoft.DotNet.ApiCompat.Task
 From Version 8.0.100-preview.7.23329.3 -> To Version 8.0.100-preview.7.23354.2

* Update dependencies from https://github.com/dotnet/runtime-assets build 20230705.1

Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.TestData , System.Data.Common.TestData , System.Drawing.Common.TestData , System.Formats.Tar.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Text.RegularExpressions.TestData , System.Windows.Extensions.TestData
 From Version 8.0.0-beta.23326.1 -> To Version 8.0.0-beta.23355.1

* Update dependencies from https://github.com/dotnet/emsdk build 20230705.1

Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100.Transport
 From Version 8.0.0-preview.7.23326.1 -> To Version 8.0.0-preview.7.23355.1

* Update dependencies from https://github.com/dotnet/sdk build 20230705.4

Microsoft.DotNet.ApiCompat.Task
 From Version 8.0.100-preview.7.23329.3 -> To Version 8.0.100-preview.7.23355.4

* Update dependencies from https://github.com/dotnet/sdk build 20230706.6

Microsoft.DotNet.ApiCompat.Task
 From Version 8.0.100-preview.7.23329.3 -> To Version 8.0.100-preview.7.23356.6

* Update dependencies from https://github.com/dotnet/arcade build 20230706.1

Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 8.0.0-beta.23328.2 -> To Version 8.0.0-beta.23356.1

Dependency coherency updates

Microsoft.SourceLink.GitHub,Microsoft.DotNet.XliffTasks
 From Version 8.0.0-beta.23314.2 -> To Version 8.0.0-beta.23330.1 (parent: Microsoft.DotNet.Arcade.Sdk

* Update dependencies from https://github.com/dotnet/sdk build 20230707.1

Microsoft.DotNet.ApiCompat.Task
 From Version 8.0.100-preview.7.23329.3 -> To Version 8.0.100-preview.7.23357.1

* Update dependencies from https://github.com/dotnet/arcade build 20230707.3

Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 8.0.0-beta.23328.2 -> To Version 8.0.0-beta.23357.3

Dependency coherency updates

Microsoft.SourceLink.GitHub,Microsoft.DotNet.XliffTasks
 From Version 8.0.0-beta.23314.2 -> To Version 8.0.0-beta.23355.1 (parent: Microsoft.DotNet.Arcade.Sdk

* Update dependencies from https://github.com/dotnet/sdk build 20230707.13

Microsoft.DotNet.ApiCompat.Task
 From Version 8.0.100-preview.7.23329.3 -> To Version 8.0.100-preview.7.23357.13

* Update dependencies from https://github.com/dotnet/arcade build 20230710.1

Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 8.0.0-beta.23328.2 -> To Version 8.0.0-beta.23360.1

Dependency coherency updates

Microsoft.SourceLink.GitHub,Microsoft.DotNet.XliffTasks
 From Version 8.0.0-beta.23314.2 -> To Version 8.0.0-beta.23358.1 (parent: Microsoft.DotNet.Arcade.Sdk

* Update dependencies from https://github.com/dotnet/runtime build 20230709.3

Microsoft.NET.ILLink.Tasks , Microsoft.NET.Sdk.IL , Microsoft.NETCore.App.Runtime.win-x64 , Microsoft.NETCore.ILAsm , runtime.native.System.IO.Ports , System.Text.Json
 From Version 8.0.0-preview.7.23325.2 -> To Version 8.0.0-preview.7.23359.3

* Update dependencies from https://github.com/dotnet/sdk build 20230710.1

Microsoft.DotNet.ApiCompat.Task
 From Version 8.0.100-preview.7.23329.3 -> To Version 8.0.100-preview.7.23360.1

* reenable json reflection

* Move setting to test project template

* Update dependencies from https://github.com/dotnet/arcade build 20230710.4

Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 8.0.0-beta.23328.2 -> To Version 8.0.0-beta.23360.4

Dependency coherency updates

Microsoft.SourceLink.GitHub,Microsoft.DotNet.XliffTasks
 From Version 8.0.0-beta.23314.2 -> To Version 8.0.0-beta.23359.1 (parent: Microsoft.DotNet.Arcade.Sdk

* Update dependencies from https://github.com/dotnet/icu build 20230710.1

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 8.0.0-preview.7.23326.2 -> To Version 8.0.0-preview.7.23360.1

* Update dependencies from https://github.com/dotnet/xharness build 20230710.3

Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit
 From Version 8.0.0-prerelease.23326.1 -> To Version 8.0.0-prerelease.23360.3

* Update dependencies from https://github.com/dotnet/runtime-assets build 20230710.1

Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.TestData , System.Data.Common.TestData , System.Drawing.Common.TestData , System.Formats.Tar.TestData , System.IO.Compression.TestData , System.IO.Packaging.TestData , System.Net.TestData , System.Private.Runtime.UnicodeData , System.Runtime.Numerics.TestData , System.Runtime.TimeZoneData , System.Security.Cryptography.X509Certificates.TestData , System.Text.RegularExpressions.TestData , System.Windows.Extensions.TestData
 From Version 8.0.0-beta.23326.1 -> To Version 8.0.0-beta.23360.1

* Update dependencies from https://github.com/dotnet/hotreload-utils build 20230710.1

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 8.0.0-alpha.0.23326.2 -> To Version 8.0.0-alpha.0.23360.1

* Update dependencies from https://github.com/dotnet/cecil build 20230710.2

Microsoft.DotNet.Cecil
 From Version 0.11.4-alpha.23327.1 -> To Version 0.11.4-alpha.23360.2

* Update dependencies from https://github.com/dotnet/sdk build 20230711.2

Microsoft.DotNet.ApiCompat.Task
 From Version 8.0.100-preview.7.23329.3 -> To Version 8.0.100-preview.7.23361.2

* Moving JsonSerializerIsReflectionEnabledByDefault to only be set in the tests that need it.

* Update Version.Details.xml

* Update Versions.props

* Enable the reflection serializer for EAT builds

* Update dependencies from https://github.com/dotnet/arcade build 20230711.1

Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 8.0.0-beta.23328.2 -> To Version 8.0.0-beta.23361.1

Dependency coherency updates

Microsoft.SourceLink.GitHub,Microsoft.DotNet.XliffTasks
 From Version 8.0.0-beta.23314.2 -> To Version 8.0.0-beta.23360.2 (parent: Microsoft.DotNet.Arcade.Sdk

* Update dependencies from https://github.com/dotnet/emsdk build 20230711.2

Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100.Transport
 From Version 8.0.0-preview.7.23326.1 -> To Version 8.0.0-preview.7.23361.2

* move the JsonSerializerIsReflectionEnabledByDefault to tests.wasm.targets

* [wasm] WBT: Fix breaking tests

`Wasm.Build.Tests.WasmTemplateTests.RunWithDifferentAppBundleLocations`
broke with the latest sdk:

`/root/helix/work/workitem/e/dotnet-latest/sdk/8.0.100-preview.7.23362.1/Roslyn/Microsoft.CSharp.Core.targets(80,5): error MSB6004: The specified task executable location "/root/helix/work/workitem/e/dotnet-latest/dotnet/dotnet" is invalid.`

This was because https://github.com/dotnet/roslyn/pull/68918 changed
to expect `DOTNET_ROOT` to be a directory instead of the exe path.

* Update tests.wasm.targets

* [wasm] set JsonSerializerIsReflectionEnabledByDefault unconditionally

feedback from @eiriktsarpalis

* Update eng/testing/tests.wasm.targets

Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
* Json Trimming tests use DisabledProperties

* [wasm] WBT: Set DOTNET_ROOT for tests

* [wasm] WBT: Set DOTNET_ROOT explicitly in the helix environment

The `NonWasmTemplateBuildTests` avoid using the default environment
variables used for all other tests, which includes `DOTNET_ROOT`. Set
`DOTNET_ROOT` explicitly in the helix setup script for windows, so we
always have a fallback.

```
    Wasm.Build.Tests.NonWasmTemplateBuildTests.NonWasmConsoleBuild_WithoutWorkload(config: "Debug", extraBuildArgs: "", targetFramework: "net6.0") [FAIL]
       Expected 0 exit code but got 1: C:\helix\work\workitem\e\dotnet-none\dotnet.exe build -restore -c Debug -bl:C:\helix\work\workitem\uploads\xharness-output\logs\nonwasm_net6.0_Debug_iyhtgmvj.uu4.binlog  -f net6.0
      Standard Output:
      [] MSBuild version 17.8.0-preview-23361-03+5ab64ed27 for .NET
      []   Determining projects to restore...
      []   Restored C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj (in 820 ms).
      []   Determining projects to restore...
      []   Restored C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj (in 11.21 sec).
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(314,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : You must install or update .NET to run this application. [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error :  [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : App: C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\bincore\csc.dll [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : Architecture: x64 [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : Framework: 'Microsoft.NETCore.App', version '8.0.0-preview.7.23361.9' (x64) [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : .NET location: C:\helix\work\correlation\dotnet-cli\ [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error :  [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : The following frameworks were found: [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error :   8.0.0-preview.5.23280.8 at [C:\helix\work\correlation\dotnet-cli\shared\Microsoft.NETCore.App] [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error :  [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : Learn more: [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : https://aka.ms/dotnet/app-launch-failed [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error :  [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : To install missing framework, download: [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : https://aka.ms/dotnet-core-applaunch?framework=Microsoft.NETCore.App&framework_version=8.0.0-preview.7.23361.9&arch=x64&rid=win10-x64 [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      []
```

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Larry Ewing <lewing@microsoft.com>
Co-authored-by: Sven Boemer <sbomer@gmail.com>
Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Co-authored-by: Ankit Jain <radical@gmail.com>
16 months ago[mono] Expanding a marshaller error message (#88726)
Jan Dupej [Wed, 12 Jul 2023 23:09:20 +0000 (01:09 +0200)]
[mono] Expanding a marshaller error message (#88726)

* Expanding error message in #46926

* Removing unnecessary code.

16 months ago[main] Update dependencies from dnceng/internal/dotnet-optimization (#88521)
dotnet-maestro[bot] [Wed, 12 Jul 2023 22:33:19 +0000 (17:33 -0500)]
[main] Update dependencies from dnceng/internal/dotnet-optimization (#88521)

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20230706.3

optimization.linux-arm64.MIBC.Runtime , optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-arm64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.23354.4 -> To Version 1.0.0-prerelease.23356.3

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20230707.5

optimization.linux-arm64.MIBC.Runtime , optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-arm64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.23354.4 -> To Version 1.0.0-prerelease.23357.5

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20230708.5

optimization.linux-arm64.MIBC.Runtime , optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-arm64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.23354.4 -> To Version 1.0.0-prerelease.23358.5

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20230709.2

optimization.linux-arm64.MIBC.Runtime , optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-arm64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.23354.4 -> To Version 1.0.0-prerelease.23359.2

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20230710.7

optimization.linux-arm64.MIBC.Runtime , optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-arm64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.23354.4 -> To Version 1.0.0-prerelease.23360.7

* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20230711.5

optimization.linux-arm64.MIBC.Runtime , optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-arm64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR
 From Version 1.0.0-prerelease.23354.4 -> To Version 1.0.0-prerelease.23361.5

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
16 months agoJIT: fix recursive inline check (#88749)
Andy Ayers [Wed, 12 Jul 2023 21:48:15 +0000 (14:48 -0700)]
JIT: fix recursive inline check (#88749)

The existing check was too conservative, and blocked inlines of one instantation
of a generic method into a different instantiation of the same method, or of two
different methods that share the exact same IL stream.

Generalize the check to also compare the method handle and runtime context.

Fixes #88667
Fixes #58824

16 months ago[RISC-V] Missing defines in GC (#88661)
Alexander Soldatov [Wed, 12 Jul 2023 21:35:22 +0000 (00:35 +0300)]
[RISC-V] Missing defines in GC (#88661)

16 months ago[wasm] WBT: Fix breaking tests (#88751)
Ankit Jain [Wed, 12 Jul 2023 21:10:58 +0000 (17:10 -0400)]
[wasm] WBT: Fix breaking tests (#88751)

* [wasm] WBT: Fix breaking tests

`Wasm.Build.Tests.WasmTemplateTests.RunWithDifferentAppBundleLocations`
broke with the latest sdk:

`/root/helix/work/workitem/e/dotnet-latest/sdk/8.0.100-preview.7.23362.1/Roslyn/Microsoft.CSharp.Core.targets(80,5): error MSB6004: The specified task executable location "/root/helix/work/workitem/e/dotnet-latest/dotnet/dotnet" is invalid.`

This was because https://github.com/dotnet/roslyn/pull/68918 changed
to expect `DOTNET_ROOT` to be a directory instead of the exe path.

* [wasm] WBT: Set DOTNET_ROOT for tests

* [wasm] WBT: Set DOTNET_ROOT explicitly in the helix environment

The `NonWasmTemplateBuildTests` avoid using the default environment
variables used for all other tests, which includes `DOTNET_ROOT`. Set
`DOTNET_ROOT` explicitly in the helix setup script for windows, so we
always have a fallback.

```
    Wasm.Build.Tests.NonWasmTemplateBuildTests.NonWasmConsoleBuild_WithoutWorkload(config: "Debug", extraBuildArgs: "", targetFramework: "net6.0") [FAIL]
       Expected 0 exit code but got 1: C:\helix\work\workitem\e\dotnet-none\dotnet.exe build -restore -c Debug -bl:C:\helix\work\workitem\uploads\xharness-output\logs\nonwasm_net6.0_Debug_iyhtgmvj.uu4.binlog  -f net6.0
      Standard Output:
      [] MSBuild version 17.8.0-preview-23361-03+5ab64ed27 for .NET
      []   Determining projects to restore...
      []   Restored C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj (in 820 ms).
      []   Determining projects to restore...
      []   Restored C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj (in 11.21 sec).
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.RuntimeIdentifierInference.targets(314,5): message NETSDK1057: You are using a preview version of .NET. See: https://aka.ms/dotnet-support-policy [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : You must install or update .NET to run this application. [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error :  [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : App: C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\bincore\csc.dll [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : Architecture: x64 [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : Framework: 'Microsoft.NETCore.App', version '8.0.0-preview.7.23361.9' (x64) [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : .NET location: C:\helix\work\correlation\dotnet-cli\ [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error :  [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : The following frameworks were found: [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error :   8.0.0-preview.5.23280.8 at [C:\helix\work\correlation\dotnet-cli\shared\Microsoft.NETCore.App] [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error :  [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : Learn more: [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : https://aka.ms/dotnet/app-launch-failed [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error :  [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : To install missing framework, download: [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      [] C:\helix\work\workitem\e\dotnet-none\sdk\8.0.100-preview.7.23362.1\Roslyn\Microsoft.CSharp.Core.targets(80,5): error : https://aka.ms/dotnet-core-applaunch?framework=Microsoft.NETCore.App&framework_version=8.0.0-preview.7.23361.9&arch=x64&rid=win10-x64 [C:\helix\work\workitem\e\wbt\nonwasm_net6.0_Debug_iyhtgmvj.uu4\nonwasm_net6.0_Debug_iyhtgmvj.uu4.csproj]
      []
```

16 months ago[mono][mini] Fix conversion from STACK_PTR to R8 (#88745)
Vlad Brezae [Wed, 12 Jul 2023 19:14:29 +0000 (22:14 +0300)]
[mono][mini] Fix conversion from STACK_PTR to R8 (#88745)

* [mono][mini] Fix conversion from STACK_PTR

It was hardcoded to int conversion instead of checking the arch ptr size.

* Enable tests

16 months agoenable JsImportTaskTypes (#88728)
Pavel Savara [Wed, 12 Jul 2023 18:31:41 +0000 (20:31 +0200)]
enable JsImportTaskTypes (#88728)

16 months agoUpdate dependencies from https://github.com/dotnet/roslyn-analyzers build 20230710...
dotnet-maestro[bot] [Wed, 12 Jul 2023 17:40:38 +0000 (12:40 -0500)]
Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20230710.1 (#88658)

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.11.0-beta1.23357.1 -> To Version 3.11.0-beta1.23360.1

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
16 months ago[interp] break up MINT_LDSTR_TOKEN into two opcodes (#88738)
Aleksey Kliger (λgeek) [Wed, 12 Jul 2023 17:22:55 +0000 (13:22 -0400)]
[interp] break up MINT_LDSTR_TOKEN into two opcodes (#88738)

MINT_LDSTR_DYNAMIC for dynamic methods.  the data item is an index
into the DynamicMethod:method.method_data which stores pointers to
MonoString objects that are held by the managed DynamicMethod.

MINT_LDSTR_CSTR for ilgen wrappers. the data item is a raw C string
that is global, or was allocated by malloc

Fixes https://github.com/dotnet/runtime/issues/88694 by allowing
MINT_LDSTR_CSTR in any method since we no longer depend on
mono_method_get_wrapper_data at execution time.  And at transform time
we have access to the actual wrapper method.

16 months agoAdd GC.KeepAlive to COM paths in WeakReference (#88537)
Mark Plesko [Wed, 12 Jul 2023 16:32:23 +0000 (09:32 -0700)]
Add GC.KeepAlive to COM paths in WeakReference (#88537)

Omission was noticed by @AustinWise. I reproed the failure and this fix for it on linux-x64.

Fixes #81362

16 months agoFix SuperFileCheck from failing outerloop (#88692)
Will Smith [Wed, 12 Jul 2023 16:12:15 +0000 (09:12 -0700)]
Fix SuperFileCheck from failing outerloop (#88692)

16 months agoUpdate binding generator to do case-insensitive config-key/property name matching...
Layomi Akinrinade [Wed, 12 Jul 2023 15:57:08 +0000 (08:57 -0700)]
Update binding generator to do case-insensitive config-key/property name matching, & make some formatting improvements (#88338)

* Update binding generator to do case-insensitive config-key/property name matching, & make some formatting improvements

* Address feedback

16 months ago[mono][threads] save/restore errno in thread state transitions (#79856)
Aleksey Kliger (λgeek) [Wed, 12 Jul 2023 15:44:31 +0000 (11:44 -0400)]
[mono][threads] save/restore errno in thread state transitions (#79856)

* [threads] Save errno when using posix semaphores for thread transitions

   We already save/restore GetLastError on win32.  Do it on posix platforms, too.

   If one thread is in a pinvoke wrapper, while another thread triggers a STW, the pinvoke wrapper will self-suspend the thread and wait for a notification to resume.  Depending on the platform we can use win32 primitives, Mach semaphores or POSIX semaphores.  win32 and posix can both change the value of last error (errno, respectively) while the thread is suspended.

   That means that code like this (generated by the LibraryImportAttribute source generator) cannot reliably retrieve the error from the last pinvoke:

   ```csharp
   __retVal = __PInvoke(__path_native, mode); // there is a pinvoke wrapper here, that transitions from GC Safe to GC Unsafe mode
   __lastError = System.Runtime.InteropServices.Marshal.GetLastSystemError();
   ```

   The solution is to explicitly preserve the value of GetLastError/errno when exiting from GC Safe.

   Fixes https://github.com/dotnet/runtime/issues/77364

* rename W32_DEFINE_LAST_ERROR_RESTORE_POINT to MONO_DEFINE_LAST_ERROR_RESTORE_POINT

   and W32_RESTORE_LAST_ERROR_FROM_RESTORE_POINT to MONO_RESTORE_LAST_ERROR_FROM_RESTORE_POINT

16 months agoMove startup validation to the options assembly (#88546)
Steve Harter [Wed, 12 Jul 2023 13:48:39 +0000 (08:48 -0500)]
Move startup validation to the options assembly (#88546)

16 months agoBumping .net7 and .net6 version (#88698)
Thays Grazia [Wed, 12 Jul 2023 13:34:34 +0000 (10:34 -0300)]
Bumping .net7 and .net6 version (#88698)

16 months ago[browser][mt] smoke test active issues (#88676)
Pavel Savara [Wed, 12 Jul 2023 11:25:03 +0000 (13:25 +0200)]
[browser][mt] smoke test active issues (#88676)

16 months agoEnable finalizer events for EventPipe (#88604)
Lakshan Fernando [Wed, 12 Jul 2023 10:44:54 +0000 (03:44 -0700)]
Enable finalizer events for EventPipe (#88604)

* Enable finalizer events for EventPipe

* FB

16 months ago[wasm] Optimize Vector128<float>/<double>.Equals in interp/jiterp (#88064)
Katelyn Gadd [Wed, 12 Jul 2023 07:15:00 +0000 (00:15 -0700)]
[wasm] Optimize Vector128<float>/<double>.Equals in interp/jiterp (#88064)

* Add browser-bench measurement for int32 and float equals
* Add interp intrinsics for Vector128 float and double Equals methods
* Implement Vector128 float and double Equals methods in jiterp
* Add jiterp validation to make sure we never appendSimd(0) by accident

16 months agoDo not use RhGetCodeTarget in delegate equality (#88611)
SingleAccretion [Wed, 12 Jul 2023 06:48:25 +0000 (09:48 +0300)]
Do not use RhGetCodeTarget in delegate equality (#88611)

https://github.com/dotnet/corert/commit/08d78ae391e3eea9ad51265f867e42ee1649282d

The original motivation for this was handling import stubs:
```
Function pointer equality comparison was not handling cross-module pointers correctly when optimizations were enabled
(causes target pointers to be wrapped in jump stubs sometimes). The delegate equality comparison was hitting this bug.
```
We do not have import stubs anymore and unwrapping unboxing stubs serves no purpose here.

Microbenchmarks of delegate equality show ~3x improvement with this change:
```
Bench_DelegateEquality_Positive_OpenStatic<10000000>() took: 355 ms
Bench_DelegateEquality_Positive_ClosedStatic<10000000>() took: 367 ms
Bench_DelegateEquality_Positive_ClosedInstance<10000000>() took: 371 ms

Bench_DelegateEquality_Positive_OpenStatic<10000000>() took: 121 ms
Bench_DelegateEquality_Positive_ClosedStatic<10000000>() took: 120 ms
Bench_DelegateEquality_Positive_ClosedInstance<10000000>() took: 122 ms
```

Additionally, there is some desire to upstream changes for a portable RhGetCodeTarget implementation. Not having to
deal with it at this relatively low-level layer will make things more robust.

16 months ago[wasm] Wasm.Build.Tests - some refactoring, and rationalizing (#88357)
Ankit Jain [Wed, 12 Jul 2023 06:09:40 +0000 (02:09 -0400)]
[wasm] Wasm.Build.Tests - some refactoring, and rationalizing (#88357)

16 months agoExpose IUtf8SpanParsable and implement it on the primitive numeric types (#86875)
Tanner Gooding [Wed, 12 Jul 2023 05:12:34 +0000 (22:12 -0700)]
Expose IUtf8SpanParsable and implement it on the primitive numeric types (#86875)

* Expose IUtf8SpanParsable

* Have INumberBase implement IUtf8SpanParsable

* Deduplicate some floating-point parsing logic

* Refactoring the primitive parsing logic to support UTF-8

* Updating the primitive numeric types to include UTF-8 parsing support

* Adding tests covering the new UTF-8 parsing support

* Ensure that tests don't try to capture a span in lambda

* Ensure that MatchChars does the right thing

* Account for the switch from string to ROSpan<TChar> for currSymbol

* Ensure EqualsIgnoreCaseUtf8_Scalar handles the remaining elements correctly

* Allow alloc-free conversion for the UTF8 parsing fallback paths

* Remove unnecessary attributes and ensure trailing elements are correctly handled

* Fix the handling of UTF8 as per the feedback

* Fix a slightly broken merge

* Ensure the lengths are properly checked on the ASCII path

* Ensure that length is defined for 32-bit

* Responding to PR feedback and allow invalid sequences to self match

* Fixing a copy/paste error

* Fixing a build failure due to not assigning the out parameter

16 months agoSwitch the order of AOT SDK and framework assemblies (#88703)
SingleAccretion [Wed, 12 Jul 2023 02:12:47 +0000 (05:12 +0300)]
Switch the order of AOT SDK and framework assemblies (#88703)

When you have built a CoreCLR CoreLib, it "poisons" the build
s.t. running libraries tests with NAOT becomes impossible.

This is because $(IlcFrameworkPath) draws from a shared framework
that contains the CoreCLR CoreLib, while it should use the CoreLib
from the AOT SDK.

This targeted change changes the order in which these two assemblies
get passed to ILC and allows one to use "/p:TestNativeAot=true"
without additional workarounds.

16 months agoFix options source gen with non-accessible validation attributes (#88613)
Tarek Mahmoud Sayed [Tue, 11 Jul 2023 23:55:43 +0000 (16:55 -0700)]
Fix options source gen with non-accessible validation attributes (#88613)

16 months agoFix virtual static dispatch for variant interfaces when using default implementations...
David Wrighton [Tue, 11 Jul 2023 23:41:24 +0000 (16:41 -0700)]
Fix virtual static dispatch for variant interfaces when using default implementations (#88639)

- Move the handling for variance so that it is in the same place as it is for instance methods
- Validate the behavior of such dispatch is equivalent to the dispatch behavior involving instance variant default dispatch
- Rework the fix for #80350 to avoid violating an invariant of the type system (which is that all MethodDef's of a TypeDef are loaded as MethodDescs when loading the open type).

Fixes #78621

16 months agoEnsure that the CpuId tests set preferredVectorByteLength to a non-zero value (#88623)
Tanner Gooding [Tue, 11 Jul 2023 22:26:36 +0000 (15:26 -0700)]
Ensure that the CpuId tests set preferredVectorByteLength to a non-zero value (#88623)

* Ensure that the CpuId tests set preferredVectorByteLength to a non-zero value

* Ensure getPreferredVectorByteLength takes NAOT into account

* Don't condition the preferred vector byte length based on stress mode

16 months ago[mono] Fix the formatting of field types FieldInfo.ToString () so it matches clr...
Zoltan Varga [Tue, 11 Jul 2023 21:42:15 +0000 (17:42 -0400)]
[mono] Fix the formatting of field types FieldInfo.ToString () so it matches clr. (#88648)

Fixes https://github.com/dotnet/runtime/issues/88637.

16 months agoRead/Write Big/LittleEndian support for Guid (#87993)
Alexander Radchenko [Tue, 11 Jul 2023 20:51:43 +0000 (02:51 +0600)]
Read/Write Big/LittleEndian support for Guid (#87993)

* Read/Write Big/LittleEndian support for Guid

* Code review

* Jan Kotas code review

* Code review
MemoryMarshal.Read<Guid>(b);
[DoesNotReturn]

* Use MemoryMarshal.AsRef

* code review try AsBytes(Guid)

16 months ago[nativeaot] Add Native AOT cross-build support for iOS-like platforms (#88242)
Milos Kotlar [Tue, 11 Jul 2023 19:34:35 +0000 (21:34 +0200)]
[nativeaot] Add Native AOT cross-build support for iOS-like platforms (#88242)

* Add Native AOT cross-build support for iOS-like platforms

* Add -hostos parameter for cross-components build

---------

Co-authored-by: Michal Strehovský <MichalStrehovsky@users.noreply.github.com>
16 months agoAdd more docs for new COM source generator types (#88627)
Jeremy Koritzinsky [Tue, 11 Jul 2023 18:46:35 +0000 (11:46 -0700)]
Add more docs for new COM source generator types (#88627)

16 months agoRespect IsDynamicCodeSupported in more places in Linq.Expressions (#88539)
Eric Erhardt [Tue, 11 Jul 2023 16:55:13 +0000 (11:55 -0500)]
Respect IsDynamicCodeSupported in more places in Linq.Expressions (#88539)

* Respect IsDynamicCodeSupported in more places in Linq.Expressions

* CanEmitObjectArrayDelegate
* CanCreateArbitraryDelegates

These properties are all set to `false` when running on NativeAOT, so have them respect RuntimeFeature.IsDynamicCodeSupported.

However, CanEmitObjectArrayDelegate needs a work around because DynamicDelegateAugments.CreateObjectArrayDelegate does not exist in CoreClr's System.Private.CoreLib.

Allow System.Linq.Expressions to create an object[] delegate using Ref.Emit even though RuntimeFeature.IsDynamicCodeSupported is set to false (ex. using a feature switch). To enable this, add an internal method in CoreLib that temporarily allows the current thread to skip the RuntimeFeature check and allows DynamicMethod instances to be created. When System.Linq.Expressions needs to generate one of these delegates, it calls the internal method through Reflection and continues to use Ref.Emit to generate the delegate.

Fix #81803

16 months agoremove [::] treatment (#88590)
Dan Moseley [Tue, 11 Jul 2023 16:42:37 +0000 (11:42 -0500)]
remove [::] treatment (#88590)

16 months agoMove Win32 resource emission to the compiler (#88464)
Michal Strehovský [Tue, 11 Jul 2023 08:33:01 +0000 (17:33 +0900)]
Move Win32 resource emission to the compiler (#88464)

Fixes #79634.

To generate Win32 resources, we'd first use an MSBuild task to dump Win32 resources from the input IL module into a `.res` file. We'd then pass the `.res` file to link.exe. Link.exe would then invoke cvtres.exe to convert the `.res` file to `.obj`. Link.exe then links the `.obj` into the final executable.

Skip all of this and instead generate the correct object data in the compiler directly. I'm reusing Win32 resource emission logic from crossgen2. It already mostly does the right thing - we just needed to split the `.rsrc` section into `.rsrc$01` and `.rsrc$02` that link.exe expects. The first part has the data directory. The second part has the actual resource data.

Contributes to #73931. The cvtres step was actually non-deterministic because it creates an object file in TEMP and embeds this temporary name into the object.

16 months agoDisable outerloop tests on mono/mobile and fix timeout in sendtohelixhelp.proj (...
Alexander Köplinger [Tue, 11 Jul 2023 08:30:02 +0000 (10:30 +0200)]
Disable outerloop tests on mono/mobile and fix timeout in sendtohelixhelp.proj (#79885)

The Helix workitem timeout still looked for the old `Outerloop` property but we're using `TestScope` instead now.

16 months agoAdd support to specify substitutions externally (#88230)
Michal Strehovský [Tue, 11 Jul 2023 04:50:09 +0000 (13:50 +0900)]
Add support to specify substitutions externally (#88230)

ILLinker allows specifying substitutions on the command line, same as descriptors. This can be useful for various workarounds. Add support for this for ILC as well.

16 months ago[wasm][debugger] Fix regex for helix retries when chrome fails to launch (#88632)
Ankit Jain [Tue, 11 Jul 2023 00:59:46 +0000 (20:59 -0400)]
[wasm][debugger] Fix regex for helix retries when chrome fails to launch (#88632)

16 months agoFix hotreload 88528 (#88635)
Thays Grazia [Tue, 11 Jul 2023 00:28:56 +0000 (21:28 -0300)]
Fix hotreload 88528 (#88635)

16 months agoFixes #82871 Add an additional constructor for StackTrace (#88542)
Mike Lorbetske [Tue, 11 Jul 2023 00:26:57 +0000 (19:26 -0500)]
Fixes #82871 Add an additional constructor for StackTrace (#88542)

* Fixes #82871 Add an additional constructor for StackTrace

* Update new signature as prescribed

Update ref

Add tests

* Updated documentation

* Use the constructor for List<T> that takes in the set of objects it should contain

16 months agoAdd some xml comments (#88433)
Dan Moseley [Tue, 11 Jul 2023 00:08:12 +0000 (19:08 -0500)]
Add some xml comments (#88433)

16 months ago[mono] Precompute the CallInfo structure used by the mono_arch_..nati… (#88369)
Zoltan Varga [Mon, 10 Jul 2023 23:41:24 +0000 (19:41 -0400)]
[mono] Precompute the CallInfo structure used by the mono_arch_..nati… (#88369)

* [mono] Precompute the CallInfo structure used by the mono_arch_..native_call_context_.. functions.

* Fix indentation.

* Fix the arm build.

16 months ago[mono][aot] Avoid prefer-ing gsharedvt versions of AsyncMethodBuilderCore etc. method...
Zoltan Varga [Mon, 10 Jul 2023 23:07:24 +0000 (19:07 -0400)]
[mono][aot] Avoid prefer-ing gsharedvt versions of AsyncMethodBuilderCore etc. methods in profile-only mode. (#87990)

The gsharedvt versions might not be generated if they are not in the profile, leading to crashes
at runtime.

Fixes https://github.com/dotnet/runtime/issues/87856.

16 months agoAdd Support For Multiplexing `System.Diagnostics.Metrics` for `Dotnet Monitor` and...
kkeirstead [Mon, 10 Jul 2023 22:43:26 +0000 (17:43 -0500)]
Add Support For Multiplexing `System.Diagnostics.Metrics` for `Dotnet Monitor` and `Dotnet Counters` (#86504)

16 months agoWork around for Android builds using GCC for cross compiler native tools build (...
Jo Shields [Mon, 10 Jul 2023 21:23:13 +0000 (17:23 -0400)]
Work around for Android builds using GCC for cross compiler native tools build (#88345)

* Work around for Android builds using GCC for cross compiler native tools build

* Allow true cross-compiled cross-compiler during Android repo builds

16 months ago[wasm][debugger] Disable failing HotReload tests (#88630)
Ankit Jain [Mon, 10 Jul 2023 21:21:06 +0000 (17:21 -0400)]
[wasm][debugger] Disable failing HotReload tests (#88630)

Issue: https://github.com/dotnet/runtime/issues/88528

16 months agoReduce boxing in logging (#88560)
David Fowler [Mon, 10 Jul 2023 20:50:15 +0000 (16:50 -0400)]
Reduce boxing in logging (#88560)

- Logging got overhauled to use CompositeFormat in .NET 8, this allows for non boxing string formatting via string.Format. There's one piece of code that boxing the generic argument before handing off to string.Format so remove it for primitive types and enums.

16 months ago[main] Update dependencies from dotnet/roslyn-analyzers (#87768)
dotnet-maestro[bot] [Mon, 10 Jul 2023 20:38:41 +0000 (13:38 -0700)]
[main] Update dependencies from dotnet/roslyn-analyzers (#87768)

* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20230618.1

* Suppress RS1038 analyzer

* Fix new failures found with CA1859 analyzer updates

* Disable CA2261 on test projects, fix more CA1859 findings

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Buyaa Namnan <bunamnan@microsoft.com>
16 months agoAdd C library detection to processinfo3 test (#88260)
Justin Anderson [Mon, 10 Jul 2023 20:17:10 +0000 (13:17 -0700)]
Add C library detection to processinfo3 test (#88260)

16 months ago[wasm] Update PackedSimd API (#88595)
Radek Doulik [Mon, 10 Jul 2023 18:46:13 +0000 (20:46 +0200)]
[wasm] Update PackedSimd API (#88595)

Implements https://github.com/dotnet/runtime/issues/88092

16 months ago[mono][interp] Add support for missing argument storage type (#88606)
Vlad Brezae [Mon, 10 Jul 2023 18:45:51 +0000 (21:45 +0300)]
[mono][interp] Add support for missing argument storage type (#88606)

When a valuetype is passed by ref on the stack

16 months agofix IsMutuallyAuthenticated with NegotiateClientCertificateAsync (#88488)
Tomas Weinfurt [Mon, 10 Jul 2023 17:38:39 +0000 (10:38 -0700)]
fix IsMutuallyAuthenticated with NegotiateClientCertificateAsync (#88488)

16 months agoFix CoreCLR tests build with skipmanaged option (#88321)
ashaurtaev [Mon, 10 Jul 2023 16:47:56 +0000 (19:47 +0300)]
Fix CoreCLR tests build with skipmanaged option (#88321)

16 months agofix processing of TLS renegotiation (#88511)
Tomas Weinfurt [Mon, 10 Jul 2023 15:48:14 +0000 (08:48 -0700)]
fix processing of TLS renegotiation (#88511)

16 months agoFix crash happening due to invalid pointer to free() (#86868)
Giridhar Trivedi [Mon, 10 Jul 2023 14:17:11 +0000 (19:47 +0530)]
Fix crash happening due to invalid pointer to free() (#86868)

While working on netcore debugger for mono,the crash was happening.
This crash was due to an invalid pointer to the free(). Valgrind
was showing the traces of mismatch between the new() and delete().
After debugging the issue, even though hidden flag was set on
shared library the objdump on the shared library showed that
the overloaded new() operator was taken from a local scoped library
but overloaded delete() operator was overidden by defaults setting
of underlying system libraries in which delete() was hosted.
Changed the fvisibility flag to ensure that clang picks up the
local new() and delete() overloaded operators.

Co-authored-by: Giridhar Trivedi <giridhar.trivedi@ibm.com>
16 months ago[mono] mscordbi: Missing symbol crash fix (#86864)
Giridhar Trivedi [Mon, 10 Jul 2023 14:10:17 +0000 (19:40 +0530)]
[mono] mscordbi: Missing symbol crash fix (#86864)

* [NCDB]Fix crash caused due to unavailability of symbols.

While working on netcore debugger for mono below symbols were missing from the binary.
 - mdHasSemantic
 - m_zeros
 - CBlobPoolHash
 - StgBlobPool
 - RecordPool
 - SplitPath
 - PEDecoder::CheckCorHeader
 - GetOsPageSize
 - PAL_Random
These symbols were part of mdruntime-dbi and mdruntimerw-dbi library.
These library was properly linked to mscodbi. Though these were linked
properly compiler was unableto find these symbols. Further investigations
revealed that the order of linking these libraries plays an important role.
After modifying the order of linkage the crash is resolved.

* Incorporating review comments

Removed the commented code

---------

Co-authored-by: Giridhar Trivedi <giridhar.trivedi@ibm.com>
16 months ago[libs][Unix][perf] Lazily initialize TimeZoneInfo names and order GetSystemTimeZones...
Mitchell Hwang [Mon, 10 Jul 2023 14:07:01 +0000 (10:07 -0400)]
[libs][Unix][perf] Lazily initialize TimeZoneInfo names and order GetSystemTimeZones by Ids (#88368)

* [libs] Remove unnecessary assignment TZifHead

* [libs][perf] Add lazy initialization for TimeZoneInfo names

* Reduce comparisons for UTC alias and remove static array allocation

* [libs] Lazy init display names for utc aliases

* [libs][perf] Order system time zones by id

* Directly compare numerical value

* Fix internal field naming

* Remove TryPopulateTimeZoneDisplayNamesFromGlobalizationData

* Make lazy initialization methods static on windows

* Revert "[libs][perf] Order system time zones by id"

This reverts commit 580a765775693a2e8f5de81a46591c8a94890088.

* Fix lazy initialization for Minimal Globalization Data

* Avoid lazy initialization where internal display name fields are set to null

* Fix CreateLocal not preserving lazy initialized names

* Prevent unintended lazy initialization in CreateCustomTimeZone

* Make UICulture a property

* Substitute null name properties with empty string in default constructor

* Assert not reached in Invariant mode

16 months agoConvert RegistryKey.SystemKeyHandle to method (#88591)
Huo Yaoyuan [Mon, 10 Jul 2023 13:39:13 +0000 (21:39 +0800)]
Convert RegistryKey.SystemKeyHandle to method (#88591)

16 months agoLocalized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 221762...
dotnet bot [Mon, 10 Jul 2023 13:38:09 +0000 (15:38 +0200)]
Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2217623 (#88506)

* Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2216122

* Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2216122

* Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2216356

* Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2216356

16 months agoFix example of building a library. (#87398)
skyoxZ [Mon, 10 Jul 2023 13:34:06 +0000 (21:34 +0800)]
Fix example of building a library. (#87398)

16 months ago[browser] Internalize assetUniqueQuery as modulesUniqueQuery (#88329)
Pavel Savara [Mon, 10 Jul 2023 09:57:33 +0000 (11:57 +0200)]
[browser] Internalize assetUniqueQuery as modulesUniqueQuery (#88329)

16 months ago[wasm] [jiterp] Use wasm if opcode for null checks and conditional branches (#88114)
Katelyn Gadd [Mon, 10 Jul 2023 05:20:40 +0000 (22:20 -0700)]
[wasm] [jiterp] Use wasm if opcode for null checks and conditional branches (#88114)

Use wasm if opcode for null checks and conditional branches where necessary; use if and br_if directly where possible
Refactor branching implementation and move more into Cfg

16 months agoEnsure that NI_Vector_Dot is always handled as TYP_SIMD (#88447)
Tanner Gooding [Mon, 10 Jul 2023 04:16:01 +0000 (21:16 -0700)]
Ensure that NI_Vector_Dot is always handled as TYP_SIMD (#88447)

* Ensure that NI_Vector_Dot is always handled as TYP_SIMD

* Apply formatting patch

* Ensure simdType is passed in to gtNewSimdDotProdNode

* Apply suggestions from code review

Co-authored-by: Kunal Pathak <Kunal.Pathak@microsoft.com>
---------

Co-authored-by: Kunal Pathak <Kunal.Pathak@microsoft.com>
16 months agoFix missing GC events on non-Windows for nativeaot (#88282)
Elinor Fung [Mon, 10 Jul 2023 03:55:18 +0000 (23:55 -0400)]
Fix missing GC events on non-Windows for nativeaot (#88282)

16 months ago[RISC-V] Disable Inline TLS field access (#88584)
Dong-Heon Jung [Mon, 10 Jul 2023 03:14:43 +0000 (12:14 +0900)]
[RISC-V] Disable Inline TLS field access (#88584)

- Disable https://github.com/dotnet/runtime/pull/87082 for RISC-V

16 months agoFix XML doc for Avx.Floor (#88552)
Martin Othamar [Sun, 9 Jul 2023 17:37:34 +0000 (19:37 +0200)]
Fix XML doc for Avx.Floor (#88552)

16 months agoImprove crossgen2 --help layout (#88544)
Adeel Mujahid [Sat, 8 Jul 2023 22:33:35 +0000 (01:33 +0300)]
Improve crossgen2 --help layout (#88544)

16 months ago[Mono][RISC-V] emit mul inst instead of emulated mul (#85445)
VincentWu [Sat, 8 Jul 2023 17:47:00 +0000 (01:47 +0800)]
[Mono][RISC-V] emit mul inst instead of emulated mul (#85445)

* update makefile

* add format file

* use mul inst instead of emulate mul
process stack size larger than imm32

* emit get_throw_trampoline

* mono_riscv_throw_exception

* fix error of stack trace

* test case

* output inst idiv
fix mono_riscv_emit_branch_exc

* implement mono_arch_get_throw_corlib_exception

* fix rdiv

* move ArgOnStack arg at prologue
lowering OP_XOR_IMM&OP_IXOR_IMM

* fix emit_imm

* test imm

* update test case

* use swich to process return value

* fix offset of params in a call

* lowering OP_IDIV_IMM

* fmt

* remove test file

* address comment

16 months agoHave jitstress_isas_x86_evex set PreferredVectorBitWidth=512 (#88531)
Tanner Gooding [Sat, 8 Jul 2023 17:39:10 +0000 (10:39 -0700)]
Have jitstress_isas_x86_evex set PreferredVectorBitWidth=512 (#88531)

* Have jitstress_isas_x86_evex set PreferredVectorBitWidth=512

* Ensure that IsHardwareAccelerated correctly takes the preferred width into account

* Ensure the tests take DOTNET_PreferredVectorBitWidth into account

* Ensure PreferredVectorBitWidth is interpreted as a decimal

* Fix a build failure where the default value wasn't passed in

* Minor whitespace fix to trigger CI

16 months ago[RISC-V, LOONGARCH64] Fix FuncEvalHijack stackallocation (#88493)
t-mustafin [Sat, 8 Jul 2023 08:46:36 +0000 (11:46 +0300)]
[RISC-V, LOONGARCH64] Fix FuncEvalHijack stackallocation (#88493)

16 months ago[interp] Add MINT_STELEM_VT_NOREF (#87161)
Katelyn Gadd [Sat, 8 Jul 2023 04:59:12 +0000 (21:59 -0700)]
[interp] Add MINT_STELEM_VT_NOREF (#87161)

Based on instrumentation 0.2% of all mono_gc_wbarrier_value_copy_internal calls in a run of System.Runtime.Tests are from MINT_STELEM_VT. I suspect adding this NOREF version of the opcode will improve performance for data structures that store structs in arrays but don't contain any references - for example List<ValueTuple<...>> or Dictionary<int, int> - but it's hard to measure locally.

16 months agoPrint variable types when dumping the output (#88420)
Michał Petryka [Fri, 7 Jul 2023 20:59:21 +0000 (22:59 +0200)]
Print variable types when dumping the output (#88420)

16 months agoDisallow Options source gen produce diagnostics from outside the compilation (#88396)
Tarek Mahmoud Sayed [Fri, 7 Jul 2023 17:58:29 +0000 (10:58 -0700)]
Disallow Options source gen produce diagnostics from outside the compilation (#88396)

16 months agoFix Int128 truncating conversion discarding significant bits (#88526)
Nate Hitze [Fri, 7 Jul 2023 17:05:46 +0000 (13:05 -0400)]
Fix Int128 truncating conversion discarding significant bits (#88526)

Also fixes test that would have caught this bug.

Fixes #88389

16 months agoFIx SequenceReader Rewind(0) state corruption (#86070)
hrrrrustic [Fri, 7 Jul 2023 16:46:19 +0000 (19:46 +0300)]
FIx SequenceReader Rewind(0) state corruption (#86070)

* Add zero check

* Drop few redundant readonly

* Add test

16 months agoUse E3 to completely clear console on Unix when possible (#88487)
Nate Hitze [Fri, 7 Jul 2023 16:39:56 +0000 (12:39 -0400)]
Use E3 to completely clear console on Unix when possible (#88487)

* Use E3 to clear console on Unix when possible

Some terminals define an extra sequence to clear the terminal scroll
buffer. Using it before the clear sequence makes Clear() work like the
'clear' command.

Fix #84351

16 months agoIgnore suppressed diagnostics in code fix verifier (#88492)
Sven Boemer [Fri, 7 Jul 2023 16:33:25 +0000 (18:33 +0200)]
Ignore suppressed diagnostics in code fix verifier (#88492)

The failures started with
https://github.com/dotnet/runtime/commit/299a8c9c178c38c6e7ca62b1bcce8f6e0d895ebe,
which pulled in changes to the test SDK such that suppressed warnings
are now included in the set of warnings checked by the code fix
verifier.