Jeff Handley [Thu, 20 Oct 2022 17:22:58 +0000 (10:22 -0700)]
Update System.Speech to Eric/Jeff (#77142)
Andrew Au [Thu, 20 Oct 2022 17:12:08 +0000 (10:12 -0700)]
Make sure all heap segment fields are populated in the DAC (#77035)
Jeff Handley [Thu, 20 Oct 2022 17:09:19 +0000 (10:09 -0700)]
Update .vsconfig file (#77189)
* Update .vsconfig; remove outdated and add new/missing components
* Update .vsconfig to sort the components
* Remove Blend component from .vsconfig
Aaron Robinson [Thu, 20 Oct 2022 14:48:15 +0000 (07:48 -0700)]
Remove more swprintf_s uses (#77228)
* Remove the swprintf_s export
* Convert paths to UTF-8 for flow graph diagnostics in JIT.
Pavel Savara [Thu, 20 Oct 2022 13:57:50 +0000 (15:57 +0200)]
[wasm] IDBFS test
Yoh Deadfall [Thu, 20 Oct 2022 12:26:54 +0000 (15:26 +0300)]
Added snake and kebab naming policies to JSON serializer (#69613)
* Added snake and kebab naming policies to JSON serializer
* Code styling issues
* Explicit types
* Fixed range slicing issue
* Fixed tests
* Forgotten conversion in tests
* Fixed docs
Co-authored-by: Daniel Stockhammer <daniel@stockhammer.it>
* Used nameof instead of hardcoded names in source generator
* Updated public API
* Fixed kebab case lower policy
* Added tests for long inputs
* Performance improvements
* Made ConvertName sealed
Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
* Explicit variable type
* Clear only a dirty part of the buffer
* Fixed exception on slicing more that exists
* Better variable name
* End-to-end serialization tests
Co-authored-by: Daniel Stockhammer <daniel@stockhammer.it>
Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
Marek Fišera [Thu, 20 Oct 2022 11:11:02 +0000 (13:11 +0200)]
[wasm] Template nits 2 (#77205)
* Drop duplicated description from json definition.
* Update readme in both templates.
dotnet-maestro[bot] [Thu, 20 Oct 2022 09:48:54 +0000 (11:48 +0200)]
Update dependencies from https://github.com/dotnet/linker build
20221018.2 (#77214)
Microsoft.NET.ILLink.Tasks
From Version 7.0.100-1.22514.1 -> To Version 7.0.100-1.22518.2
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Jakob Botsch Nielsen [Thu, 20 Oct 2022 09:20:40 +0000 (11:20 +0200)]
JIT: Support delegate GDV guards in loop cloning (#75140)
Add support for cloning loops based on delegate GDV guards. Mark delegate address loads as invariant to allow VN and CSE of them.
Remove exceptions on indirs in guards after loop cloning, which otherwise prevents RBO from optimizing them away if the loop is inside an EH handler (e.g. foreach loop).
Vlad Brezae [Thu, 20 Oct 2022 08:04:25 +0000 (11:04 +0300)]
[mono][interp] Don't use mov.vt when storing into primitive type fields (#77221)
* [mono][interp] Rename opcodes to better suggest that they are doing a conversion
* [mono][interp] Don't use mov.vt when storing into primitive type fields
Use the faster mov.x opcodes instead.
Ilona Tomkowicz [Thu, 20 Oct 2022 07:03:34 +0000 (09:03 +0200)]
[wasm][debugger] Remove non-deterministic signals from debugger tests. (#77038)
* Easy fix.
* Non wasm page loading detection.
* This is a good test, Sleep was redundant.
* This comment can be removed.
* Applied radical's idea to simplify the logic.
Pavel Savara [Thu, 20 Oct 2022 06:39:02 +0000 (08:39 +0200)]
[wasm] few JS interop tests (#77218)
* new JS interop tests
Co-authored-by: Marek Fišera <mara@neptuo.com>
Co-authored-by: Ankit Jain <radical@gmail.com>
David Cantú [Thu, 20 Oct 2022 04:34:57 +0000 (23:34 -0500)]
Add missing tests for NamedPipes (#72956)
* Add missing tests for NamedPipes
* Address feedback
* Move event wait to happen one line before Connect.
* Bring back previous version of test
* Reword SkipTestException message
* Move NamedPipeTest.CurrentUserOnly.cs to compile for all platforms
* Address feedback
* Remove IsRemoteExecutorSupportedAndOnUnixAndSuperUser
* Keep RemoteExecutor.IsSupported
Will Smith [Thu, 20 Oct 2022 01:16:10 +0000 (18:16 -0700)]
[JIT] X64 - Three instruction replacement sequence for multiply in certain cases (#76981)
* Using 3 instruction sequence for x64 multiply
* Do not do this in morph. Do it in codegen now.
* Fixing codegen
* Only allow values under 127 and do not skip mov - correctness testing
* Try to fix tests
* cleanup
* Moving to Lowering
* Quick fix
* Fully works in lowering now
* Account for all ints
* Take into account codegen opts
* Minor cleanup
* Minor cleanup
* Fixed test
* Added int multiply disasm checks. Fixed SuperFileCheck namespace bug. Made SuperFileCheck anchors more likely to match.
* Update comments
* Update comments
* Update comments
* Update comments
* Formatting
* Fixing build
* Fixing build again
* minor rename
* Feedback. Removed use of FULL-LINE as it is more readable not strictly necessary. Forgot to add an additional instruction to a disasm test.
* Formatting
SingleAccretion [Wed, 19 Oct 2022 22:29:50 +0000 (01:29 +0300)]
Add IR support for modeling multiple SSA definitions as one store (#76139)
* Change how we track use SSA numbers for partial defs
Store them in the SSA descriptor instead of a map.
Memory (x64): +0.18%
PIN (x64): -0.04%
The memory regression is not small...
* SsaNumInfo support
* Support in SSA, VN and CopyProp
For now, just the "CanBeReplacedWithItsField" case.
This enables some nice simplifications, even as the
general case gets more complex.
Two quirks have been added to attain zero diffs.
* Support in dumping
* TP tuning
Gets us back 0.05% on the PIN counter. Hard to believe but true.
* More TP tuning
Another 0.025%.
Egor Bogatov [Wed, 19 Oct 2022 22:09:43 +0000 (00:09 +0200)]
Fold 'static readonly single-field-struct' to constants (#77102)
Co-authored-by: Andy Ayers <andya@microsoft.com>
Parker Bibus [Wed, 19 Oct 2022 21:42:47 +0000 (14:42 -0700)]
[PERF][MAUI] Update Nuget.config branch for Maui workload install net7.0 (#77231)
Update nuget config link.
Will Smith [Wed, 19 Oct 2022 19:27:15 +0000 (12:27 -0700)]
[JIT] ARM64 - Do not allow move and shifting with MSL on 16-bit vectors (#77123)
* Do not allow move and shifting with MSL on 16-bit vectors
* Update src/coreclr/jit/emitarm64.cpp
Co-authored-by: Bruce Forstall <brucefo@microsoft.com>
Co-authored-by: Bruce Forstall <brucefo@microsoft.com>
Alhad Deshpande [Wed, 19 Oct 2022 16:51:05 +0000 (22:21 +0530)]
[ppc64le] Fixed FSharp crash issue (#77201)
* [ppc64le] Fixed thunk address 8 byte alignment issue
* Fixed FSharp crash issue
Ilona Tomkowicz [Wed, 19 Oct 2022 16:04:08 +0000 (18:04 +0200)]
[wasm][debugger] Remove `JToken` properties that are for internal use only (#75958)
* Keep underscore removable properties as constants.
* Clean up before exposing externally.
* Value types need cleanup as well.
* Fixed RootHidden tests.
* Applied a variation of @radical's idea.
* Fix tests.
* Reverted to @radical's version.
* Revert
14a2be2eca82e0848e73130d7a8405e0f99f62bd.
* Applied radical's suggestions.
Vlad Brezae [Wed, 19 Oct 2022 13:55:59 +0000 (16:55 +0300)]
[mono][sgen] Fix detection of weakref objects (#77170)
Comparison with klass mono_defaults.generic_weakreference_class was broken because that class is a generic class while the objects have as a class generic instantiations of that so the comparison would fail. Simplify the code by adding a new gc bit where we can use name comparison.
Maryam Ariyan [Wed, 19 Oct 2022 13:54:15 +0000 (09:54 -0400)]
Add missing docs for `M.E.Configuration.Xml` (#77188)
dotnet-maestro[bot] [Wed, 19 Oct 2022 10:12:35 +0000 (10:12 +0000)]
[main] Update dependencies from 7 repositories (#77043)
[main] Update dependencies from 7 repositories
- Merge branch 'main' into darc-main-
d225b419-3f71-4bc6-a773-
cebd8ea6ca0a
dotnet-maestro[bot] [Wed, 19 Oct 2022 10:10:55 +0000 (12:10 +0200)]
[main] Update dependencies from dotnet/arcade (#76924)
* Update dependencies from https://github.com/dotnet/arcade build
20221011.1
Microsoft.DotNet.ApiCompat , 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.22503.1 -> To Version 8.0.0-beta.22511.1
* Update dependencies from https://github.com/dotnet/arcade build
20221012.1
Microsoft.DotNet.ApiCompat , 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.22503.1 -> To Version 8.0.0-beta.22512.1
* Update dependencies from https://github.com/dotnet/arcade build
20221013.2
Microsoft.DotNet.ApiCompat , 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.22503.1 -> To Version 8.0.0-beta.22513.2
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Marek Safar <marek.safar@gmail.com>
Eirik Tsarpalis [Wed, 19 Oct 2022 09:06:05 +0000 (10:06 +0100)]
Fix regression when serializing untyped polymorphic root-level custom converters. (#77186)
Fix #77173.
Andy Ayers [Wed, 19 Oct 2022 04:55:41 +0000 (21:55 -0700)]
JIT: avoid LCL_FLD stress for locals that already have LCL_FLD appear… (#77082)
* JIT: avoid LCL_FLD stress for locals that already have LCL_FLD appearances
Also lay the groundwork for making this stress a bit more random.
Fixes #76855.
* Fix spelling
Co-authored-by: Bruce Forstall <brucefo@microsoft.com>
Co-authored-by: Bruce Forstall <brucefo@microsoft.com>
Adeel Mujahid [Wed, 19 Oct 2022 00:02:11 +0000 (03:02 +0300)]
Use DOTNET_ variables in tests (#76997)
* Use DOTNET_ variables in tests
* Delete RunBenchmarks directory
* Address CR feedback
* Fix typos
* Cleanup minor redundancies
* Use DOTNET_ vars in superpmi scripts
* Fix typo
Jason Malinowski [Tue, 18 Oct 2022 23:18:30 +0000 (16:18 -0700)]
Don't generate a nearly empty file (#76835)
When generators are running in the Visual Studio IDE, there's some
overhead to having to manage a project that actually has generated
output. It requires us to maintain two Roslyn Compilation objects,
each which have their own symbol information. These interop generators
are producing a file that's effectively empty (just an <auto-generated>
comment on the top), and since they're installed in all .NET 7.0
applications, they are the reason we'll be having to manage more memory
than before. Since the fix is simple enough to only generate the output
if necessary, we should do so.
This also will help with telemetry, since we have telemetry that lets us
tracking in the wild which generators are producing how many files;
if we're always producing exactly one file we won't know how many
sessions out there are actually using this generator in a meaningful
way.
Igor Bagdamyan [Tue, 18 Oct 2022 22:18:37 +0000 (01:18 +0300)]
Fixes a wrong not node insertion producing broken lir range on macos arm64 (#77166)
Shay Rojansky [Tue, 18 Oct 2022 22:02:08 +0000 (00:02 +0200)]
Swallow MSDTC availability exceptions for CI test reliability (#77023)
Fixes #76836
xbrady [Tue, 18 Oct 2022 22:01:02 +0000 (16:01 -0600)]
Update Strings.resx (#77175)
Remove extra space from front of Received an unexpected EOF or 0 bytes from the transport stream.
Jan Vorlicek [Tue, 18 Oct 2022 20:25:03 +0000 (22:25 +0200)]
Modify __int64 definition in PAL to match the OS definition (#77056)
* Modify __int64 definition in PAL to match the OS definition
This change modifies the definition of __int64 and thus of many other
types defined on the basis of it to match the OS definitions. This
ensures that we can use these types in interfaces between code in
coreclr and various PALs that are compiled against OS headers.
The key issue was that we were defining __int64 for 64 bit OSes as
long while Unix defines it as long long. The size of those types is the
same on Unix, but they are different and result in different mangling of
C++ names.
* Fix coreclr tests build
* Fix comment on #endif in jit.h
* Reflect PR feedback
* Fix jit source formatting
* Fix FreeBSD build
Jan Kotas [Tue, 18 Oct 2022 19:48:09 +0000 (12:48 -0700)]
Move leap seconds DateTime configuration statics into LeapSecondCache class (#77163)
This enables AOT initialization of public readonly DateTime statics like DateTime.Min/MaxValue.
Nick Stanton [Tue, 18 Oct 2022 17:43:08 +0000 (11:43 -0600)]
API Debt - Microsoft.Extensions.DependencyInjection (#76940)
* Resolve missing triple-slash
* Apply suggestions from code review
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
Andy Ayers [Tue, 18 Oct 2022 17:41:27 +0000 (10:41 -0700)]
JIT: fix out of bounds read during SPMI collection (#77147)
When recording the profile data into the method context, SPMI was
assuming all data items were `sizeof(uintptr_t)` which is not guaranteed.
Use the proper size.
Fixes #76991.
Maryam Ariyan [Tue, 18 Oct 2022 17:19:41 +0000 (13:19 -0400)]
Logging API doc additions (#77127)
Steve Harter [Tue, 18 Oct 2022 17:18:05 +0000 (12:18 -0500)]
Update README.md's to use "contribution bar" (#77134)
Adeel Mujahid [Tue, 18 Oct 2022 16:22:10 +0000 (19:22 +0300)]
Update Unix dependencies installation script (#77107)
* Update Unix dependencies installation script
* Add missing libz-dev
* Use zlib1g-dev instead of libz-dev
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
* Remove obsolete arguments
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
SingleAccretion [Tue, 18 Oct 2022 15:33:39 +0000 (18:33 +0300)]
Don't check handles in substitution (#76730)
* Remove the struct handle check in substitution
* Fix an assert
Larry Ewing [Tue, 18 Oct 2022 14:43:41 +0000 (09:43 -0500)]
[mono][workload] Add workloads for win-arm64 using emulation (#68994)
* Revert "Revert "[mono][workload] Add workloads for win-arm64 using emulation (#65089)" (#67154)"
This reverts commit
67f26ca4fbc27d215c9ba766c7d93966b69b5a99.
* Update workload project to handle arm64 artifacts
Co-authored-by: Steve Pfister <steve.pfister@microsoft.com>
Milos Kotlar [Tue, 18 Oct 2022 13:20:22 +0000 (15:20 +0200)]
use mono_class_interface_offset_with_variance for interface offset in MONO_RGCTX_INFO_VIRT_METHOD_CODE (#77113)
Jakob Botsch Nielsen [Tue, 18 Oct 2022 09:26:37 +0000 (11:26 +0200)]
JIT: Evaluate GDV call args early (#75634)
The normal evaluation order for a callvirt is the following:
1. The 'this' arg is evaluated
2. The arguments are evaluated
3. 'this' is null-checked
4. The call is performed
Step 1 and 2 happen as part of the IL instructions that load the
arguments, while step 3 and 4 happen as part of the callvirt IL
instruction.
For GDV the guards needs to dereference 'this'. We were doing this too
early, causing step 3 to happen before step 2. The fix is to spill all
side-effecting arguments for GDVs to temps.
Fix #75607
Jakob Botsch Nielsen [Tue, 18 Oct 2022 08:30:48 +0000 (10:30 +0200)]
Avoid runtime "atomic write" check in ConcurrentDictionary for shared generics (#77005)
ConcurrentDictionary caches an s_isValueWriteAtomic in a static
readonly, but this trick does not work for shared generics. Extract the
static readonly field to a class only dependent on TValue to handle
more cases, and also add a reference type check up front to get a lot
of the shared generics cases.
Marek Safar [Tue, 18 Oct 2022 03:45:07 +0000 (05:45 +0200)]
Update area-System.IO.Pipelines lead (#77111)
Austin Wise [Tue, 18 Oct 2022 01:35:00 +0000 (18:35 -0700)]
[NativeAOT] fix debug assert on large number of virtual methods (#77106)
According to the ARM docs for this op code:
https://developer.arm.com/documentation/ddi0596/2020-12/Base-Instructions/LDR--immediate---Load-Register--immediate--?lang=en
> For the 64-bit variant: is the optional positive immediate byte offset, a multiple of 8 in the range 0 to 32760, defaulting to 0 and encoded in the "imm12" field as <pimm>/8.
You can see that once the offset has been devided by 8, it will be in the range [0, 4095], which will fit in the 12 bits allocated for the offset.
David Mason [Mon, 17 Oct 2022 20:10:07 +0000 (13:10 -0700)]
Emit ICorProfiler ModuleLoadFinished for dynamic modules (#77068)
Meri Khamoyan [Mon, 17 Oct 2022 15:19:47 +0000 (19:19 +0400)]
#76596 update icu version for norwegian culture (#77003)
* #76596 update icu version for norwegian culture
Tarek Mahmoud Sayed [Mon, 17 Oct 2022 14:42:20 +0000 (07:42 -0700)]
Fix loading app-local ICU (#77065)
Viktor Hofer [Mon, 17 Oct 2022 13:50:00 +0000 (15:50 +0200)]
Fix ILLink running in incremental builds (#77110)
Now that the new APICompat runs after all the compilation targets, this depends on in illink.targets isn't necessary anymore and fixes the incremental build issue.
Regressed with https://github.com/dotnet/runtime/commit/
960e4d723c27a5407dc691d06e546bc455a9c4a5 as the new APICompat doesn't run as post compiler target anymore but instead, as part of the `PrepareForRun` target. That caused the ILLink dependent target to always run, even if the compiler didn't run and the inputs/outputs didn't change.
Eirik Tsarpalis [Mon, 17 Oct 2022 13:18:00 +0000 (14:18 +0100)]
Use hashcodes when looking up the JsonSerializerOptions global cache. (#76782)
* Use hashcodes when looking up the JsonSerializerOptions global cache.
* Address feedback.
dotnet-maestro[bot] [Mon, 17 Oct 2022 13:12:15 +0000 (13:12 +0000)]
[main] Update dependencies from dotnet/linker (#76779)
[main] Update dependencies from dotnet/linker
Alexander Köplinger [Mon, 17 Oct 2022 12:47:34 +0000 (14:47 +0200)]
NativeAOT: remove some headers that are not needed (#77042)
* NativeAOT: remove some headers that are not needed
* Remove HAVE_UCONTEXT_T too
Robin Sue [Mon, 17 Oct 2022 03:02:22 +0000 (05:02 +0200)]
Fix Typo (#77104)
Viktor Hofer [Sun, 16 Oct 2022 13:15:28 +0000 (15:15 +0200)]
Leverage the shipping, roslyn based ApiCompat in dotnet/runtime (#73263)
* ApiCompat infra changes
* Convert baseline to suppression files
* ApiCompat.proj
* update suppressions
* sorted suppressions
* rebase and update suppressions
* enable attribute and param rules
* Enable optional rules
* WebAssemblyThreading proj
* CompatSuppression for XmlREaderWriter
* Enable optional rules correctly...
* ThreadPool UnsupportedOSPlatformAttribute
* VBCore CP0017
* Migrate all CoreLibs over
* Update ApiCompat.proj
* Add ApiCompat.proj baselines
* Update ApiCompat.proj
* Clean-up suppression files with nint/IntPtr fix
* Clean-up CoreLib suppression
* Update suppression files with latest apicompat fix
* Update suppression files
* update suppressions
* Update suppression files
* Clean-up obsolete suppression files
* Update suppression files
* update suppressions
* huge reduction in suppression file size
* update suppressions
* more suppressions removed
* update suppressions
* Update dependencies and clean-up
* Add suppression files for CoreLib and fix path
* Update CoreLib coreclr suppression file
* Update coreclr suppression files
* Suppression file fixes and Linux path fixes
* Update coreclr suppression again)
* Fix suppression file path calculation
* Fix previous mistake
* Diagnostics.Tracing suppression file
* Threading suppression file fix
* use global suppression for CryptoSignedXmlRecursionException
* Add Specification.Tests suppression
* Disable NoTargets ref copying
* Fix for coreclr build
* Avoid duplicate project evals
Co-authored-by: smasher164 <akhilindurti@microsoft.com>
Co-authored-by: Akhil Indurti <aindurti@gmail.com>
Youssef Victor [Sun, 16 Oct 2022 01:59:33 +0000 (03:59 +0200)]
Delete unused extension (#77088)
Egor Bogatov [Sun, 16 Oct 2022 00:49:12 +0000 (02:49 +0200)]
Add "_generated.*" suffix to some auto-generated files (#77083)
* Add _generated.h to src\coreclr\jit\ICorJitInfo_API_names.h
* Add _generated.h to src\coreclr\jit\ICorJitInfo_API_wrapper.hpp
* renamed src\coreclr\tools\Common\JitInterface\CorInfoBase.cs
* fix ThunkGenerator (it used to insert two empty lines)
* CorInfoBase_generated.cs -> CorInfoImpl_generated.cs
* Drop _API_ part
* Rename icorjitinfo.cpp
* jitinterface.h -> _generated
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Jan Kotas [Sat, 15 Oct 2022 21:29:34 +0000 (14:29 -0700)]
Cleanup file descriptions baked into Windows unmanaged .dlls (#77080)
Delete Microsoft and .NET Framework from the descriptions
Andrii Kurdiumov [Sat, 15 Oct 2022 05:22:23 +0000 (11:22 +0600)]
Update comment (#77075)
Parker Bibus [Sat, 15 Oct 2022 01:58:20 +0000 (18:58 -0700)]
Updated nuget project model version from 6.2.1 to 6.2.2. (#77057)
Yoh Deadfall [Sat, 15 Oct 2022 00:50:28 +0000 (03:50 +0300)]
Fixed a typo in a variable name (#77062)
Andy Ayers [Fri, 14 Oct 2022 23:50:37 +0000 (16:50 -0700)]
JIT: minor cleanup of some inlining methods (#77009)
Adeel Mujahid [Fri, 14 Oct 2022 22:56:18 +0000 (01:56 +0300)]
Align env var lookup in clrconfig and jithost (#77025)
Zoltan Varga [Fri, 14 Oct 2022 21:59:26 +0000 (17:59 -0400)]
Revert "[wasm] Run System.Runtime tests in a deterministic order to work around https://github.com/dotnet/runtime/issues/74302. (#76287)" (#77063)
This reverts commit
68593dd718390853b4c74dc1d79906390aaf1589.
https://github.com/dotnet/runtime/issues/74302 should be fixed now by
a07188777ffa92adc8a00ca974bd1c63156d19f1.
Nick Stanton [Fri, 14 Oct 2022 21:46:22 +0000 (15:46 -0600)]
API Debt - Microsoft.Extensions.Hosting (#76692)
* Triple slash for Extensions.Hosting
* Add Extensions.Hosting.Systemd triple-slash
* Add Extensions.Hosting.WindowsService triple-slash
* Resolve feedback. Asynchronous is hard to spell.
* Apply suggestions from code review
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
* Resolve feedback to match conventions
* Update src/libraries/Microsoft.Extensions.Hosting.WindowsServices/src/WindowsServiceLifetime.cs
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
* Address feedback and resolve missing classes
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
Eduardo Velarde [Fri, 14 Oct 2022 20:46:08 +0000 (13:46 -0700)]
Remove closed issues from issues.targets (#77021)
Zoltan Varga [Fri, 14 Oct 2022 19:48:13 +0000 (15:48 -0400)]
[mono][interp] Fix an issue with deopt and interpreter tiering. (#76743)
* [mono][interp] Fix an issue with deopt and interpreter tiering.
If a method is tiered while being run from interp_run_clause_with_il_state (),
the clause_args argument to interp_exec_method () still contains the old IL
offsets confusing the EH code, i.e. this line:
```
if (clause_args && frame == clause_args->exec_frame && context->handler_ip >= clause_args->end_at_ip)
```
Clear out clause_args at the beginning to avoid this.
Hopefully fixes
https://github.com/dotnet/runtime/issues/76134
https://github.com/dotnet/runtime/issues/74302
* [mono][interp] Avoid tiering up methods while running clauses.
The IL offsets in the clause_args argument become out-of-date after tiering up.
Sapana-Khemkar [Fri, 14 Oct 2022 13:19:37 +0000 (18:49 +0530)]
use byte load instruction in OP_CHECK_THIS instead of double word instruction (#76990)
Peter Sollich [Fri, 14 Oct 2022 12:35:00 +0000 (14:35 +0200)]
Try changing alignment (#76451)
Looking at CPU traces for microbenchmarks, I noticed a hotspot in memset (the flavor that uses AVX2 instructions) for the instruction that clears the very last double quadword at the end of an allocation context. Also, the buffer being cleared is not aligned on a 32-byte boundary.
Two tiny changes address this:
1. adding additional padding at the start of regions align the allocation context for the microbenchmark cases.
2. increasing CLR_SIZE slightly ensure the end of an allocation context doesn't consistently fall on a page boundary.
Change 1 makes sure we start with an aligned allocation context at the start of a region.
Change 2 minimizes the number of movdqu instructions executed and makes sure we don't concistently hit a new page at the end of the memset range.
N0D4N [Fri, 14 Oct 2022 09:06:25 +0000 (12:06 +0300)]
Add overloads to ReadFromJsonAsync (#75989)
* Add overloads
* Update ref source
* Add test
* Add triple slash docs
* Remove mention of exception, since stable docs don't mention them
Elinor Fung [Fri, 14 Oct 2022 06:08:00 +0000 (23:08 -0700)]
Enable visual styles for host error dialog via activation context (#76762)
Stephen Toub [Fri, 14 Oct 2022 03:41:28 +0000 (23:41 -0400)]
Use BitOperations in more places (#76933)
dotnet-maestro[bot] [Fri, 14 Oct 2022 03:33:41 +0000 (20:33 -0700)]
[main] Update dependencies from 10 repositories (#76811)
* Update dependencies from https://github.com/dotnet/runtime build
20221007.5
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-alpha.1.22502.5 -> To Version 8.0.0-alpha.1.22507.5
* Update dependencies from https://github.com/dotnet/icu build
20221010.2
Microsoft.NETCore.Runtime.ICU.Transport
From Version 8.0.0-alpha.1.22506.2 -> To Version 8.0.0-alpha.1.22510.2
* Update dependencies from https://github.com/dotnet/xharness build
20221010.1
Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit
From Version 1.0.0-prerelease.22506.1 -> To Version 1.0.0-prerelease.22510.1
* Update dependencies from https://github.com/dotnet/runtime-assets build
20221010.1
Microsoft.DotNet.CilStrip.Sources , System.ComponentModel.TypeConverter.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 7.0.0-beta.22503.1 -> To Version 7.0.0-beta.22510.1
* Update dependencies from https://github.com/dotnet/emsdk build
20221010.1
Microsoft.NET.Workload.Emscripten.net7.Manifest-8.0.100
From Version 8.0.0-alpha.1.22507.3 -> To Version 8.0.0-alpha.1.22510.1
* Update dependencies from https://github.com/dotnet/hotreload-utils build
20221010.2
Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
From Version 1.1.0-alpha.0.22503.2 -> To Version 1.1.0-alpha.0.22510.2
* Update dependencies from https://github.com/dotnet/llvm-project build
20221010.3
runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-arm64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools , runtime.linux-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.linux-x64.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-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Sdk , runtime.win-x64.Microsoft.NETCore.Runtime.Mono.LLVM.Tools
From Version 14.0.0-alpha.1.22506.2 -> To Version 14.0.0-alpha.1.22510.3
* Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build
20221011.6
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.22415.6 -> To Version 1.0.0-prerelease.22511.6
* Update dependencies from https://github.com/dotnet/icu build
20221011.2
Microsoft.NETCore.Runtime.ICU.Transport
From Version 8.0.0-alpha.1.22506.2 -> To Version 8.0.0-alpha.1.22511.2
* Update dependencies from https://github.com/dotnet/xharness build
20221011.1
Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit
From Version 1.0.0-prerelease.22506.1 -> To Version 1.0.0-prerelease.22511.1
* Update dependencies from https://github.com/dotnet/roslyn-analyzers build
20221011.2
Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
From Version 3.3.4-beta1.22504.1 -> To Version 3.3.4-beta1.22511.2
* Update dependencies from https://github.com/dotnet/icu build
20221012.11
Microsoft.NETCore.Runtime.ICU.Transport
From Version 8.0.0-alpha.1.22506.2 -> To Version 8.0.0-alpha.1.22512.11
* Update dependencies from https://github.com/dotnet/roslyn-analyzers build
20221013.1
Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
From Version 3.3.4-beta1.22504.1 -> To Version 3.3.4-beta1.22513.1
* Update dependencies from https://github.com/dotnet/roslyn build
20221013.3
Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
From Version 4.4.0-3.22505.18 -> To Version 4.5.0-1.22513.3
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Jeremy Koritzinsky <jekoritz@microsoft.com>
dotnet bot [Fri, 14 Oct 2022 03:30:44 +0000 (20:30 -0700)]
Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2020499 (#76907)
* Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2017800
* Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 2020266
Parker Bibus [Fri, 14 Oct 2022 03:23:42 +0000 (20:23 -0700)]
[PERF] Fix Linux arm64 AOT ROOTFS_DIR missing (Less Impactful) (#77027)
* Add ROOTFS_DIR as env variable for run.
* Add ROOTFS_DIR to coreclr + libaries scheduled build.
Tomáš Rylek [Thu, 13 Oct 2022 22:51:15 +0000 (00:51 +0200)]
Disable the hugeexpr1 test failing intermittently with issue #74555 (#76950)
Tomas Weinfurt [Thu, 13 Oct 2022 22:08:13 +0000 (15:08 -0700)]
retire EOL Fedora 34 (#76902)
Maryam Ariyan [Thu, 13 Oct 2022 21:03:47 +0000 (17:03 -0400)]
ActivatorUtilities not depending on ctor order for creating instances (#75846)
Pavel Savara [Thu, 13 Oct 2022 19:32:46 +0000 (21:32 +0200)]
[wasm] event pipe tweaks (#76994)
- the EP sample will download .nettrace when compiled with MonoDiagnosticsMock (debug)
To allow the app and the mock communicate
- added postMessageToBrowser and addEventListenerFromBrowser to mock environment
- exposed INTERNAL.diagnosticServerThread when built with MonoDiagnosticsMock
- added processSend to MockScriptEngineImpl so that mock could process more than just first message
- fixed EP serializer of empty string vs null
- make mime types and http headers more configurable for all samples
- move CSP policy header just into advanced sample (it prevents the EP socket to be open on another port)
- added README
- minor cleanup of async stuff
Bruce Forstall [Thu, 13 Oct 2022 19:14:25 +0000 (12:14 -0700)]
Fix insertion of alignment after BBJ_CALLFINALLY/BBJ_ALWAYS (#76988)
The Runtime_76346 test exposed a case where, in the case of STRESS_EMITTER,
we were inserting breakpoint instructions instead of NOPs for loop alignment
when the alignment followed an unconditional branch. However, it wasn't
considering the case of a BBJ_CALLFINALLY/BBJ_ALWAYS pair immediately
followed by a loop head.
This pointed out that alignment instructions should never be inserted in that
BBJ_ALWAYS block, since that block shouldn't contain any code. Inserting the
alignment NOPs affected the reported range of the EH cloned finally region
in the FEATURE_EH_CALLFINALLY_THUNKS case.
In these special cases, we simply give up on trying to align the loop.
No diffs.
Fixes #76910
Fan Yang [Thu, 13 Oct 2022 18:14:54 +0000 (14:14 -0400)]
Improve the performance of Equals* for Vector128 and Vector on Arm64 (#76944)
Parker Bibus [Thu, 13 Oct 2022 17:34:08 +0000 (10:34 -0700)]
[PERF][MAUI] Update Maui build mac version (#76945)
* Update vmimage to macos-12
Sean Hall [Thu, 13 Oct 2022 17:30:08 +0000 (12:30 -0500)]
Include hostcommon sources in hostfxr static library (#75858)
Jan Kotas [Thu, 13 Oct 2022 17:10:49 +0000 (10:10 -0700)]
Reintroduce ICorDebug typo in Mono partition as well (#77002)
Fixes build break
David Sisco [Thu, 13 Oct 2022 15:11:27 +0000 (08:11 -0700)]
Mark the port as implicit for empty values in Cookie (#76143)
* [Bug] Fix issue #70227
* Fix cookie tests cases to reflect correct behavior.
* Remove trailing semicolon in expected result of Cookie string tests.
Mitchell Hwang [Thu, 13 Oct 2022 13:52:29 +0000 (09:52 -0400)]
[tvOS] Disable crashing test (#76952)
* [tvOS] Disable crashing test
* [tests][tvOS] Disable Crc32C tests on tvOS
Jakob Botsch Nielsen [Thu, 13 Oct 2022 12:23:18 +0000 (14:23 +0200)]
JIT: Fix profiler tail call insertion logic for FIELD_LIST (#76883)
This logic was not handling FIELD_LIST and was also not handling linear
order appropriately.
The logic is still a bit odd, it would probably be better to use the
same kind of logic as CFG (moving PUTARG nodes ahead of the profiler
hook instead), but in practice this seems to be ok.
Fix #76879
Miha Zupan [Thu, 13 Oct 2022 11:53:21 +0000 (13:53 +0200)]
Improve HTTP/1 response header parsing (#74393)
* Improve HTTP/1 response header parsing
* Improve worst-case performance
* Account for line folds in FillForHeadersAsync
* PR feedback
* Extend header trickle test for line folds
* RIP goto
* Clarify the meaning of 'valueIter'
* Handle Scavenge zero-byte reads in test
Miha Zupan [Thu, 13 Oct 2022 11:50:30 +0000 (13:50 +0200)]
Remove unused code from RegexGenerator (#76951)
Jan Vorlicek [Thu, 13 Oct 2022 11:37:03 +0000 (13:37 +0200)]
Revert "Revert "Reduce CoreCLR PAL"" (#76972)
* Revert "Revert "Reduce CoreCLR PAL (#76832)" (#76860)"
This reverts commit
744fc9b9971965e5cfbcd0c2892f090d850e7234.
* Put back the _putenv since it is used by Mono
Mark Plesko [Thu, 13 Oct 2022 07:28:49 +0000 (00:28 -0700)]
Cleaner way of specifying environment variables for tests (#76458)
Existing ways of specifying environment variables:
- [3 times] CLRTestBashEnvironmentVariable is a list of `export var=value` strings
- [2 times] CLRTestBatchEnvironmentVariable is a list of `set var=value` strings
- [~100 times] BashCLRTestPreCommands and CLRTestBatchPreCommands are set to include `export`/`set` strings for the same variables
This changes CLRTestBashEnvironmentVariable and CLRTestBatchEnvironmentVariable to be a list of Identity/Value pairs and adds a new list CLRTestEnvironmentVariable in the same format. These are automatically expanded to the necessary `export`/`set` strings as appropriate.
A few details of note:
- "Real" changes are in CLRTest.Execute.Bash/Batch.targets. This moves the environment variables section of the generated cmd/sh files down to the precommands area. This is only a change for the 5 existing uses, which look ok.
- If a test has a more complicated precommands list, it may not be appropriate to extract the variables. For example, src\tests\readytorun\tests\mainv1.csproj includes them in setlocal/endlocal because they are for crossgen2 in the precommands, not the test itself. This change only updates otherwise blank precommands lists.
Jan Kotas [Thu, 13 Oct 2022 07:25:54 +0000 (00:25 -0700)]
Disable JIT/opt/OSR/pinnedlocal on all Mono flavors (#76980)
The test has been disabled on Android, but it is timing out intermittently on other platforms as well.
Jan Kotas [Thu, 13 Oct 2022 06:03:38 +0000 (23:03 -0700)]
Reintroduce typo in ICorDebug public API names (#76966)
Fixes #76960
Andy Gocke [Thu, 13 Oct 2022 05:08:18 +0000 (22:08 -0700)]
Add support for using sccache on Unix (#76889)
* Add support for using sccache on Unix
sccache (https://github.com/mozilla/sccache) is a compiler
caching tool that supports local or remote storage. It's
useful in /runtime for caching the results of the C++ components of
the build.
This PR adds support for dotnet/runtime by recognizing a =true
environment variable, which then instructs CMake to look for a the
sccache binary in the PATH.
Adeel Mujahid [Thu, 13 Oct 2022 02:50:53 +0000 (05:50 +0300)]
Remove libstdc++ dependency from NativeAOT (#76705)
Fixes #76655
Stephen Toub [Thu, 13 Oct 2022 02:25:23 +0000 (22:25 -0400)]
Add Vector128.IsHardwareAccelerated guard for ToBase64CharsLargeNoLineBreaks (#76970)
Eirik Tsarpalis [Wed, 12 Oct 2022 19:36:52 +0000 (20:36 +0100)]
Ensure source generated metadata properties are read-only. (#76540)
* Ensure source generated metadata properties are read-only.
* Add JsonTypeInfo.IsReadOnly/MakeReadOnly() APIs.
Ilona Tomkowicz [Wed, 12 Oct 2022 19:04:11 +0000 (21:04 +0200)]
[wasm][debugger] Pass-through all `scriptParsed` events, including those with empty URLs (#76187)
* Send log with empty url as well.
* Passing `scriptParsed` method without any action.
Tom Deseyn [Wed, 12 Oct 2022 18:52:26 +0000 (20:52 +0200)]
source-build: support building runtime using non-portable runtime packages. (#75597)
* source-build: support building runtime using non-portable runtime packages.
Currently source-build performs a 'runtime-portable' build that produces
'linux-{arch}' packages that are used when building target runtime (non-portable).
With this change, we can use the non-portable packages that are produced by
a previous (non-portable) 'runtime' build. This helps eliminate the
'runtime-portable' build.
* Avoid references to Microsoft.AspNetCore.App.<rid>.
* crossgen2: set RuntimeIdentifier explicitly.
* PR feedback
* Revert "crossgen2: set RuntimeIdentifier explicitly."
This reverts commit
10be2744e624b833c43eecbf3f6f6896d415b7d7.
* PR feedback.
* Revert changes to ILCompiler.csproj.
* Update Directory.Build.targets
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Alexander Köplinger [Wed, 12 Oct 2022 18:25:56 +0000 (20:25 +0200)]
Fix reading TestEnv.txt in BionicRunnerTemplate.sh (#76927)
It was assuming the script is run from the same dir as the .txt file but that is not always the case.
Drew Scoggins [Wed, 12 Oct 2022 18:10:46 +0000 (11:10 -0700)]
Remove container specification (#76943)