platform/upstream/dotnet/runtime.git
12 months agoMake firing of ETW events in nativeaot opt-in via the enabled/disabled lib (#88800)
Elinor Fung [Fri, 14 Jul 2023 20:58:24 +0000 (13:58 -0700)]
Make firing of ETW events in nativeaot opt-in via the enabled/disabled lib (#88800)

12 months ago[wasm] Re-enable JSON tests (#88883)
Katelyn Gadd [Fri, 14 Jul 2023 20:24:21 +0000 (13:24 -0700)]
[wasm] Re-enable JSON tests (#88883)

Should be fine to do this since #88876 was merged.

12 months agoJIT: Enabled embedded broadcast for binary ops (#87946)
Ruihan-Yin [Fri, 14 Jul 2023 20:20:26 +0000 (13:20 -0700)]
JIT: Enabled embedded broadcast for binary ops (#87946)

* Enabled embedded broadcast for the following ops:
and, andn, or, xor,
min, max,
div, mul, mull, sub,
variable shiftleftlogical/rightarithmetic/rightlogical

* Bug fix:
 JIT used to use a uniform intrinsic for bitwise operations with all data
 types, embedded broadcast is sensitive to input size in this case,
 adding a helper to let emitter aware when input size is long/ulong.

* reset the instruction in the later phase
when embedded broadcast is actually enabled

* filter irrelevant data type in embedded broadcast
There are cases when broadcast node are falsely contained by a embedded
broadcast compatible node, while the data type is actually not supported
Adding extra logics to avoid this situation.

* update the condition on instruction reset:
instructions with either long or ulong as basetype should be reset to
qword instructions.

* Apply format patch

* Resolve reviews:
make the typecheck based on broadcast node it self.

* Resolve review:
use `varTypeIsSmall` type check to cover all the unsupported data type
in embedded broadcast.

* Resolve reviews:
1. put the IsBitwiseInstruction to a proper place.
2. nit: restored unnecessary line delete.

12 months agoUpdate dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimizati...
dotnet-maestro[bot] [Fri, 14 Jul 2023 19:13:27 +0000 (14:13 -0500)]
Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20230712.5 (#88826)

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.23361.5 -> To Version 1.0.0-prerelease.23362.5

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
12 months ago[main] Update dependencies from dotnet/roslyn-analyzers (#88829)
dotnet-maestro[bot] [Fri, 14 Jul 2023 19:07:49 +0000 (14:07 -0500)]
[main] Update dependencies from dotnet/roslyn-analyzers (#88829)

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

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

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

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

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
12 months ago[main] Update dependencies from dotnet/arcade dotnet/xharness dotnet/emsdk (#88827)
dotnet-maestro[bot] [Fri, 14 Jul 2023 19:03:28 +0000 (14:03 -0500)]
[main] Update dependencies from dotnet/arcade dotnet/xharness dotnet/emsdk (#88827)

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

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.23361.1 -> To Version 8.0.0-beta.23362.5

Dependency coherency updates

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

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

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

* Update Tools.props

* Update Version.Details.xml

* Suppress warning in test

* Workaround for https://github.com/dotnet/sdk/issues/34003

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

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

* Add reference to NETStandard.Library

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Co-authored-by: Elinor Fung <elfung@microsoft.com>
12 months agoEnsure that IsSupported being false disables the tracked hierachy in our tests (...
Tanner Gooding [Fri, 14 Jul 2023 18:10:53 +0000 (11:10 -0700)]
Ensure that IsSupported being false disables the tracked hierachy in our tests (#88848)

12 months ago[wasm] Use latest chrome for testing (#88505)
Ankit Jain [Fri, 14 Jul 2023 17:54:29 +0000 (13:54 -0400)]
[wasm] Use latest chrome for testing (#88505)

This was fixed to a specific version (`113.0.5672.63`) because of
https://github.com/dotnet/runtime/issues/86919 . But trying to use
latest again now.

12 months agoFix missing using statement (#88906)
Vitek Karas [Fri, 14 Jul 2023 17:30:37 +0000 (10:30 -0700)]
Fix missing using statement (#88906)

Add a using which was incorrectly removed because it's only necessary in NativeAOT configuration

12 months agoRemove handwritten binding logic from Logging.Console; use generator instead (#88067)
Layomi Akinrinade [Fri, 14 Jul 2023 17:16:27 +0000 (10:16 -0700)]
Remove handwritten binding logic from Logging.Console; use generator instead (#88067)

* Remove handwritten binding logic from Logging.Console; use generator instead

* Address feedback

* Update test

* Revert "Update test"

This reverts commit fa73b4edcd4a67ad195ab30a405e7f316ae34e5e.

* Remove NoWarn for obsolete members; handled by emitted code

* Address feedback

* Apply suggestions from code review

Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
---------

Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
12 months agoUTFn->UTF-n (#88913)
Dan Moseley [Fri, 14 Jul 2023 16:57:03 +0000 (11:57 -0500)]
UTFn->UTF-n (#88913)

* resx

* cs comments

* oops

12 months agoExtend JsonSourceGenerationOptionsAttribute to have feature parity with JsonSerialize...
Eirik Tsarpalis [Fri, 14 Jul 2023 16:37:45 +0000 (17:37 +0100)]
Extend JsonSourceGenerationOptionsAttribute to have feature parity with JsonSerializerOptions. (#88753)

12 months agoFix TimeZoneInfoTests.cs on iOS/tvOS (#88909)
Alexander Köplinger [Fri, 14 Jul 2023 15:55:56 +0000 (17:55 +0200)]
Fix TimeZoneInfoTests.cs on iOS/tvOS (#88909)

12 months agoHttpClientFactory logging configuration (#88706)
Natalia Kondratyeva [Fri, 14 Jul 2023 15:30:01 +0000 (17:30 +0200)]
HttpClientFactory logging configuration (#88706)

Add 2 interfaces for custom sync and async HttpClient loggers, and extension methods to add or remove HttpClient loggers in AddHttpClient configuration.

Fixes #77312

12 months agoEventPipe support for ProcessInfo (#87562)
Lakshan Fernando [Fri, 14 Jul 2023 15:24:12 +0000 (08:24 -0700)]
EventPipe support for ProcessInfo (#87562)

* initial changes for process name

* add support to get managedEntrypointAssemblyName

* FB

* FB2

* fix main merge issues

* Using assembly location for coreclr per FB

* FB

* FB

* FB

12 months ago[browser] bump npm packages + fix webpack sample (#88907)
Pavel Savara [Fri, 14 Jul 2023 15:04:13 +0000 (17:04 +0200)]
[browser] bump npm packages + fix webpack sample (#88907)

12 months ago[nativeaot][tests] Add smoke unit runtime tests for Native AOT on iOS platforms ...
Milos Kotlar [Fri, 14 Jul 2023 14:26:40 +0000 (16:26 +0200)]
[nativeaot][tests] Add smoke unit runtime tests for Native AOT on iOS platforms (#87260)

* Initial commit

* Add runtime-ioslike-coreclr and runtime-ioslike-mono azp runs

* Add support for stripping debug symbols and enabling IL stripping during AOT compilation on iOS

* Use the _AppleGenerateAppBundle target from AppleBuild.targets to build the app bundle

* Update the CI to use cross-build

* Update the sample app to use the cross-build

* Disable failing tests with OperatingSystem.Is...().

* Update perf build command for Native AOT

* Update IlcToolsPath to use cross-build ilc path

* Use /p:BuildNativeAOTRuntimePack=true to pick up NativeAOT assets instead of CoreCLR

12 months agoEnable StressLogAnalyzer to read stress logs from old coreclr running with a new...
Jeremy Koritzinsky [Fri, 14 Jul 2023 14:08:56 +0000 (07:08 -0700)]
Enable StressLogAnalyzer to read stress logs from old coreclr running with a new clrgc. (#88852)

12 months ago[NativeAOT] Support variable page size on Linux Arm64 (#88710)
Vladimir Sadov [Fri, 14 Jul 2023 13:54:23 +0000 (06:54 -0700)]
[NativeAOT] Support variable page size on Linux Arm64 (#88710)

* stack probe

* probe size on x86

* OS_PAGE_SIZE

* call sysconf(_SC_PAGESIZE)  unconditionally

* initialize OS page in PalInit

Co-authored-by: Filip Navara <filip.navara@gmail.com>
12 months ago[wasm][debugger] Improve debugger performance based on JMC (#86982)
Thays Grazia [Fri, 14 Jul 2023 13:46:00 +0000 (10:46 -0300)]
[wasm][debugger] Improve debugger performance based on JMC (#86982)

* Improve debugger performance.

* Loading assembly bytes if JMC is disabled after the debugger session is started.

* Fix CI.

* Load symbols on demand if JMC is enabled, we don't need to spend a lot of time loading information from 149 assemblies if we will probably not need all of them.

* Impriving the performance sending only metadata and not the full assembly.

* Fixing compilation error on tvos

* Apply suggestions from code review

Co-authored-by: Ankit Jain <radical@gmail.com>
* Apply suggestions from code review

Co-authored-by: Ankit Jain <radical@gmail.com>
* fix changes from code review

* addressing @radical comments

* addressing @radical and @lewing comments

---------

Co-authored-by: Ankit Jain <radical@gmail.com>
12 months agoLocalized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 222189...
dotnet bot [Fri, 14 Jul 2023 13:16:32 +0000 (15:16 +0200)]
Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2221896 (#88636)

Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
12 months ago[browser] detect and assert engine features (#88846)
Pavel Savara [Fri, 14 Jul 2023 13:03:32 +0000 (15:03 +0200)]
[browser] detect and assert engine features (#88846)

12 months agoPresize dictionary in regex interpreter (#88558)
Dan Moseley [Fri, 14 Jul 2023 12:28:12 +0000 (07:28 -0500)]
Presize dictionary in regex interpreter (#88558)

12 months agoAdd AddHttpClientDefaults (#87953)
James Newton-King [Fri, 14 Jul 2023 11:25:09 +0000 (19:25 +0800)]
Add AddHttpClientDefaults (#87953)

The AddHttpClientDefaults method supports adding configuration to all created HttpClients.

The method:

- Creates a builder with a null name. Microsoft.Extensions.Configuration automatically applies configuration with a null name to all named configuration.
- Ensures that default configuration is added before named configuration in the IServiceCollection. This is to make it so the order of AddHttpClientDefaults and AddHttpClient doesn't matter. Default config is always applied first, then named config is applied after. This is done by wrapping the IServiceCollection in an implementation that modifies the order that IConfigureOptions<HttpClientFactoryOptions> values are added.

Fixes #87914

---------

Co-authored-by: Natalia Kondratyeva <knatalia@microsoft.com>
12 months agoSimplify condition to detect recursive inlining (#88849)
Jan Kotas [Fri, 14 Jul 2023 09:57:11 +0000 (11:57 +0200)]
Simplify condition to detect recursive inlining (#88849)

This change simplifies the conditon and also makes it more robust. There
are situation where the IL code pointer can differ for the same method.

12 months agoEnable dynamic linking for maccatalyst in sandbox environment (#88847)
Milos Kotlar [Fri, 14 Jul 2023 08:09:31 +0000 (10:09 +0200)]
Enable dynamic linking for maccatalyst in sandbox environment (#88847)

12 months agoSkip internal tool restore on mac (#88877)
Andy Gocke [Fri, 14 Jul 2023 07:06:07 +0000 (00:06 -0700)]
Skip internal tool restore on mac (#88877)

12 months agoExpose the DegreesToRadians and RadiansToDegrees APIs (#88866)
Tanner Gooding [Fri, 14 Jul 2023 05:51:57 +0000 (22:51 -0700)]
Expose the DegreesToRadians and RadiansToDegrees APIs (#88866)

* Expose the DegreesToRadians and RadiansToDegrees APIs

* Adding some comments elaborating on the Degrees/Radians conversion APIs

* Update src/libraries/System.Private.CoreLib/src/System/Numerics/ITrigonometricFunctions.cs

Co-authored-by: Joe4evr <jii.geugten@gmail.com>
* Fix a copy/paste error for the Half degree to radians tests

---------

Co-authored-by: Joe4evr <jii.geugten@gmail.com>
12 months agoEnsure that INumberBase implements IUtf8SpanFormattable (#88840)
Tanner Gooding [Fri, 14 Jul 2023 05:06:07 +0000 (22:06 -0700)]
Ensure that INumberBase implements IUtf8SpanFormattable (#88840)

* Ensure that INumberBase implements IUtf8SpanFormattable

* Ensure we return the rented buffers in the IUtf8SpanFormattable.TryFormat DIM

* Remember to slice the utf16Destination buffer and ensure we throw if we couldn't transcode back to valid UTF-8 in the DIM

* Update src/libraries/System.Private.CoreLib/src/System/Numerics/INumberBase.cs

Co-authored-by: Miha Zupan <mihazupan.zupan1@gmail.com>
* Update src/libraries/System.Private.CoreLib/src/Resources/Strings.resx

Co-authored-by: Dan Moseley <danmose@microsoft.com>
---------

Co-authored-by: Miha Zupan <mihazupan.zupan1@gmail.com>
Co-authored-by: Dan Moseley <danmose@microsoft.com>
12 months agoSimplify ldftn reverse lookups (#88719)
Michal Strehovský [Fri, 14 Jul 2023 04:33:11 +0000 (13:33 +0900)]
Simplify ldftn reverse lookups (#88719)

This used a delegate because in the past we had multiple possible callbacks. Now the delegate callback is unnecessary. Saves 12 kB on Hello World with stack traces disabled (the delegate was the only thing keeping the `GetLdFtnReverseLookups_InvokeMap` method alive).

12 months agoFix alloc-dealloc mismatch (#88875)
Jeremy Koritzinsky [Fri, 14 Jul 2023 04:25:23 +0000 (21:25 -0700)]
Fix alloc-dealloc mismatch (#88875)

This only started showing up in the ASAN PR once we had larger runtime tests after test consolidation.

12 months agoEnable new analyzers CA1862, CA1864 in runtime and fix findings. (#88700)
Buyaa Namnan [Fri, 14 Jul 2023 02:57:02 +0000 (19:57 -0700)]
Enable new analyzers CA1862, CA1864 in runtime and fix findings. (#88700)

* Enable new analyzers CA1862, CA1864 in runtime and fix findings

12 months agoFeature to be able to selectively deoptimize methods (#88797)
David Mason [Fri, 14 Jul 2023 02:42:52 +0000 (19:42 -0700)]
Feature to be able to selectively deoptimize methods (#88797)

Add ICorDebugFunction5::DisableOpimizations with support for inliners in r2r and jit methods.

Co-authored-by: Mikelle <mirogers@microsoft.com>
Co-authored-by: Juan Sebastian Hoyos Ayala <juan.hoyos@microsoft.com>
12 months ago[wasm] Stop importing function table when compiling wasm modules in jiterp (#88876)
Katelyn Gadd [Fri, 14 Jul 2023 02:14:06 +0000 (19:14 -0700)]
[wasm] Stop importing function table when compiling wasm modules in jiterp (#88876)

Importing the runtime's function table into compiled traces/helpers causes v8 to allocate a bunch of memory.

12 months agoStrip trivia from tokens. (#88856)
Jeremy Koritzinsky [Fri, 14 Jul 2023 02:10:18 +0000 (19:10 -0700)]
Strip trivia from tokens. (#88856)

* Strip trivia from tokens.

Fixes #88798

* Move the trivia stripping into ContainingSyntax record constructor

* Make ContainingSyntax a regular struct with a primary constructor instead of a record struct.

* Fix #88867

* Suppress compiler diagnostics based on the linked issue.

12 months ago[Mono] UnsafeAccessorAttribute non-generic support for field (#88626)
Fan Yang [Fri, 14 Jul 2023 01:34:07 +0000 (21:34 -0400)]
[Mono] UnsafeAccessorAttribute non-generic support for field (#88626)

* Detect an UnsafeAccessorAttribute for method with interpreter

* Change field to property

* Get Kind from typed_args

* define MonoUnsafeAccessorKind enum

* Add the frontend for JIT

* Add mono_marshal_get_unsafe_accessor_wrapper and WRAPPER_SUBTYPE_UNSAFE_ACCESSOR

And the associated AOT compiler/runtime and marshaling caching boilerplate.

* [interp] get the unsafe accessor wrapper

* fix: skip visibility in unsafe accessor wrappers

that is the whole point of them

* fix: decode the length and copy the name from UnsafeAccessorAttribute

The name has a length as a prefix and doesn not have a null terminator

* [mini] compile wrapper

* [aot] Emit unsafe accessor wrappers to the AOT image

* Add the method to emit wrapper for field

* Fix typo

* Remove assertion for interpreter

* Fix format and replace assertion with proper exception

* Free the memory and throw proper NotImplementedException

* Enable StaticField and Field tests

Co-authored-by: Aleksey Kliger <alklig@microsoft.com>
Co-authored-by: Aaron Robinson <arobins@microsoft.com>
12 months ago[wasm][debugger] Fix reading metadata info after applying changes (#88685)
Thays Grazia [Fri, 14 Jul 2023 01:02:10 +0000 (22:02 -0300)]
[wasm][debugger] Fix reading metadata info after applying changes (#88685)

* fix reading metadata info

* remove unused comment

* Adding test and fixing behavior

* improve performance

* addressing @radical suggestions

* addressing @radical comments

* addressing @radical comments

12 months agoImplement reabstraction in CoreCLR for Static Virtual Methods (#88711)
David Wrighton [Fri, 14 Jul 2023 00:43:28 +0000 (17:43 -0700)]
Implement reabstraction in CoreCLR for Static Virtual Methods (#88711)

- Add a new helper for the re-abstraction case when the JIT detects an issue
- In the late bound case, instead of producing an error directly, produce an IL stub and have it make the virtual stub dispatch call itself, this will fall back to the JIT implementation for re-abstraction
- Tweak the late bound case to also actively detect the AmbiguousMatchException case as well and use the same helper there as well.

Fixes #71414

12 months agoClean up the optimizing.md document (#88816)
Michal Strehovský [Fri, 14 Jul 2023 00:41:41 +0000 (09:41 +0900)]
Clean up the optimizing.md document (#88816)

Most of this is duplicated with the official docs. Point to the official docs.

`IlcTrimMetadata`/`IlcGenerateCompleteMetadata` are not optimization options anymore - they aid in getting apps that have trimming warnings to work. We don't intend to support them. The rest is all documented.

12 months agoEnsure that IsPow2 for floating-point numbers correctly take subnormal values into...
Tanner Gooding [Fri, 14 Jul 2023 00:28:00 +0000 (17:28 -0700)]
Ensure that IsPow2 for floating-point numbers correctly take subnormal values into account (#88839)

12 months agoRespect CopyOutputSymbolsToPublishDirectory in PublishAot (#88815)
Michal Strehovský [Thu, 13 Jul 2023 23:58:28 +0000 (08:58 +0900)]
Respect CopyOutputSymbolsToPublishDirectory in PublishAot (#88815)

Fixes dotnet/sdk#33476.

12 months agoEnsure GCHeap related debugging still works even when we use newer CLRGC to target...
Andrew Au [Thu, 13 Jul 2023 23:03:29 +0000 (16:03 -0700)]
Ensure GCHeap related debugging still works even when we use newer CLRGC to target older runtimes (#88457)

Co-authored-by: Noah Falk <noahfalk@users.noreply.github.com>
12 months agoAvoid leaking committed bytes for large pages (#87977)
Andrew Au [Thu, 13 Jul 2023 23:02:13 +0000 (16:02 -0700)]
Avoid leaking committed bytes for large pages (#87977)

12 months agoSuppress Obsolete warnings in the ComInterfaceGenerator (#88859)
Jeremy Koritzinsky [Thu, 13 Jul 2023 22:13:04 +0000 (15:13 -0700)]
Suppress Obsolete warnings in the ComInterfaceGenerator (#88859)

12 months agoJIT: Mark replacements as dirty after setting GTF_VAR_DEATH (#88669)
Jakob Botsch Nielsen [Thu, 13 Jul 2023 20:36:41 +0000 (22:36 +0200)]
JIT: Mark replacements as dirty after setting GTF_VAR_DEATH (#88669)

Physically promoted struct locals are marked as dying when their
remainder dies since all other state is stored in other locals. However,
when we do this we must also mark all replacements as stale; otherwise
a future struct use could skip writebacks and effectively introduce new
uses, invalidating the previously marked last use bit.

Fix #88616

12 months ago[mono][tests] Fix deadlock in pinvoke detach test (#88855)
Vlad Brezae [Thu, 13 Jul 2023 20:30:27 +0000 (23:30 +0300)]
[mono][tests] Fix deadlock in pinvoke detach test (#88855)

Without holding the condition mutex, the test is starting a new thread that is signaling us back. This means that the new thread could fail to signal us back, because there could be no waiters and the test would deadlock.

12 months ago[JIT] Added BEGIN and END anchors for disasm output (#88782)
Will Smith [Thu, 13 Jul 2023 19:08:40 +0000 (12:08 -0700)]
[JIT] Added BEGIN and END anchors for disasm output (#88782)

* Added BEGIN and END anchors for disasm output

* Fixing build

* Feedback

12 months agoAdd missing sections in implicit machine.config (#88553)
Mario Pistrich [Thu, 13 Jul 2023 18:38:13 +0000 (20:38 +0200)]
Add missing sections in implicit machine.config (#88553)

This will add the missing sections of type IgnoreSection to the
implicitly generated machine.config.

Fix #930

12 months agoHttpClientHandler request metrics (#87319)
Anton Firszov [Thu, 13 Jul 2023 18:05:39 +0000 (20:05 +0200)]
HttpClientHandler request metrics (#87319)

duration, current requests, failed requests

12 months ago[libs][Unix] Fix UTC alias lookup (#88641)
Michael Render [Thu, 13 Jul 2023 17:33:09 +0000 (13:33 -0400)]
[libs][Unix] Fix UTC alias lookup (#88641)

12 months agoAdd EnumBuilder implementation and other changes (#88503)
Buyaa Namnan [Thu, 13 Jul 2023 17:27:09 +0000 (10:27 -0700)]
Add EnumBuilder implementation and other changes (#88503)

* Add EnumBuilder implementation and other changes

* Update src/libraries/System.Reflection.Emit/src/System/Reflection/Emit/EnumBuilderImpl.cs

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
* Apply feedback

---------

Co-authored-by: Jan Kotas <jkotas@microsoft.com>
12 months agoUpdate enum value and assert (#88830)
Aaron Robinson [Thu, 13 Jul 2023 16:38:43 +0000 (09:38 -0700)]
Update enum value and assert (#88830)

12 months ago[PERF] Explicitly set dotnet root when building tools (#88801)
Parker Bibus [Thu, 13 Jul 2023 16:31:53 +0000 (09:31 -0700)]
[PERF] Explicitly set dotnet root when building tools (#88801)

Explicitly set DOTNET_ROOT for building performance tools.

12 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>
12 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

12 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)

12 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)

12 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)

12 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

12 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

12 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

12 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

12 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)

12 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)

12 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)

12 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>
12 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`

12 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

12 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)

12 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)

12 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)

12 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.

12 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.

12 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...

12 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.

12 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.

12 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)

12 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?

12 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>
12 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.

12 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>
12 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

12 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)

12 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]
      []
```

12 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

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

12 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>
12 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.

12 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

12 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)

12 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

12 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

12 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)

12 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)

12 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)

12 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

12 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

12 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.

12 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)

12 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