Граф коммитов

136748 Коммитов

Автор SHA1 Сообщение Дата
Andy Ayers f1332ab0d8
JIT: filter local assertion set (#110091)
During `optAssertionProp_Lcl{Fld,Var}`, only consider assertions involving the local var.
2024-11-22 16:36:06 -08:00
Mitchell Hwang 35e23f7216
Disable ALCTest due to GC Hole (#109985) 2024-11-22 15:32:55 -05:00
Aman Khalid 4045d1b9e6
JIT: Skip cost improvement check in 3-opt for exceptionally costly layouts (#110069)
Fixes #109984.
2024-11-22 14:57:46 -05:00
Carlos Sánchez López 45b75201f3
Bump versions of maintenance-packages dependencies consumed in runtime (#108806)
* Bump dependency versions of packages that now ship out of maintenance-packages (preview)

- Microsoft.Bcl.HashCode
- System.Buffers
- System.Memory
- System.Threading.Tasks.Extensions
- System.Runtime.CompilerServices.Unsafe

* Workaround name conflict for MathF: See https://github.com/dotnet/roslyn/issues/71442 We refer to MathF from
a comment which hits this bug problem in Roslyn where it thinks it's
ambiguous because visibility is not considered when resolving cref's in
doc comments.
* Permit maintenance-packages prebuilts
* Suppress CS0618 on site in System.Data.Common.Tests - 'Sql*' is obsolete: 'Use the Microsoft.Data.SqlClient package instead.
---------
Co-authored-by: Eric StJohn <ericstj@microsoft.com>
Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
2024-11-22 11:19:40 -08:00
Adeel Mujahid eed57c3ede
Skip ENOSYS filter in numa init (#110082)
* Check for EPERM in numa init

* Apply suggestions from code review
2024-11-22 17:29:06 +01:00
Steve Harter 0b87acc725
Avoid exception when parsing AD path for port number (#109977) 2024-11-22 09:30:31 -06:00
Egor Bogatov b5bdce27f2
Fold "X relop 0" in assertprop (#110076) 2024-11-22 14:56:08 +01:00
Jan Vorlicek 1b8518435b
Enlarge stack overflow handling helper stack (#110068)
The stack overflow coreclr tests started to fail recently. It turns out that
was caused by the size of the helper stack allocated for stack overflow
handling case is no longer sufficient. Moreover, there is a bug in
`Thread::CreateUtilityThread` that calls the `SetThreadName` even when the
thread creation fails.

Close #109499
2024-11-22 10:27:23 +01:00
Jakob Botsch Nielsen fe7062386e
JIT: Use reaching definitions in CSE to update conservative VNs (#109959)
Now that CSE always inserts into SSA we can update it to make use of the
reaching definition information that it has access to. CSE already spent
effort to track some extra information to try to do this, which we can
remove.

- Remove `optCSECheckedBoundMap`: this was used by CSE to try to update
  conservative VNs of ancestor bounds checks. This is unnecessary since
  all descendants of the CSE definitions should get the same
  conservative VNs automatically now.
- Remove `CSEdsc::defConservNormVN`; this was used to update
  conservative VNs in the single-def case, which again is unnecessary
  now.

Making this change requires a bit of refactoring to the incremental SSA
builder. Before this PR the builder takes all defs and all uses and then
inserts everything into SSA. After this change the builder is used in a
multi-step process as follows:
1. All definitions are added with `IncrementalSsaBuilder::InsertDef`
2. The definitions are finalized with
   `IncrementalSsaBuilder::FinalizeDefs`
3. Uses are inserted (one by one) with
   `IncrementalSsaBuilder::InsertUse`. No finalization are necessary;
   each use is directly put into SSA as a result of calling this
   method.

The refactoring allows CSE to use the incremental SSA builder such that
it can access reaching definition information for each of the uses as
part of making replacements. However, this still requires some
refactoring such that CSE performs replacements of all defs before
performing the replacements of all uses.

Additionally, this PR fixes various incorrect VN updating made by CSE.

VN and CSE still track VNs that are interesting bounds check. However,
VN was sometimes inserting VNs with exception sets into the set, which
is not useful (the consumers always use normal VNs when querying the
set). This PR fixes VN to insert the normal VN instead.

Fix #109745
2024-11-22 10:14:35 +01:00
dotnet-maestro[bot] 6717d71fca
Update dependencies from https://github.com/dotnet/source-build-reference-packages build 20241121.2 (#110071)
Microsoft.SourceBuild.Intermediate.source-build-reference-packages
 From Version 10.0.0-alpha.1.24561.2 -> To Version 10.0.0-alpha.1.24571.2

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
2024-11-22 09:44:20 +01:00
dotnet-maestro[bot] 8a360e7588
[main] Update dependencies from 6 repositories (#109477)
* Update dependencies from https://github.com/dotnet/icu build 20241101.1

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 10.0.0-alpha.1.24531.1 -> To Version 10.0.0-alpha.1.24551.1

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

Microsoft.SourceBuild.Intermediate.runtime.linux-x64 , Microsoft.NET.Sdk.IL , Microsoft.NETCore.App.Runtime.win-x64 , Microsoft.NETCore.ILAsm , runtime.native.System.IO.Ports , System.Reflection.Metadata , System.Reflection.MetadataLoadContext , System.Text.Json
 From Version 10.0.0-alpha.1.24527.3 -> To Version 10.0.0-alpha.1.24553.1

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

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 10.0.0-alpha.1.24531.1 -> To Version 10.0.0-alpha.1.24554.2

* Update dependencies from https://github.com/dotnet/runtime-assets build 20241104.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 10.0.0-beta.24530.1 -> To Version 10.0.0-beta.24554.1

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

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 10.0.0-alpha.0.24529.1 -> To Version 10.0.0-alpha.0.24554.1

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

Microsoft.SourceBuild.Intermediate.cecil , Microsoft.DotNet.Cecil
 From Version 0.11.5-alpha.24521.1 -> To Version 0.11.5-alpha.24554.3

* Update dependencies from https://github.com/dotnet/source-build-externals build 20241104.1

Microsoft.SourceBuild.Intermediate.source-build-externals
 From Version 10.0.0-alpha.1.24528.1 -> To Version 10.0.0-alpha.1.24554.1

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

Microsoft.SourceBuild.Intermediate.runtime.linux-x64 , Microsoft.NET.Sdk.IL , Microsoft.NETCore.App.Runtime.win-x64 , Microsoft.NETCore.ILAsm , runtime.native.System.IO.Ports , System.Reflection.Metadata , System.Reflection.MetadataLoadContext , System.Text.Json
 From Version 10.0.0-alpha.1.24527.3 -> To Version 10.0.0-alpha.1.24560.2

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

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 10.0.0-alpha.1.24531.1 -> To Version 10.0.0-alpha.1.24561.2

* Update dependencies from https://github.com/dotnet/runtime-assets build 20241111.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 10.0.0-beta.24530.1 -> To Version 10.0.0-beta.24561.1

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

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 10.0.0-alpha.0.24529.1 -> To Version 10.0.0-alpha.0.24561.1

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

Microsoft.SourceBuild.Intermediate.cecil , Microsoft.DotNet.Cecil
 From Version 0.11.5-alpha.24521.1 -> To Version 0.11.5-alpha.24561.1

* Update dependencies from https://github.com/dotnet/source-build-externals build 20241111.2

Microsoft.SourceBuild.Intermediate.source-build-externals
 From Version 10.0.0-alpha.1.24528.1 -> To Version 10.0.0-alpha.1.24561.2

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

Microsoft.SourceBuild.Intermediate.runtime.linux-x64 , Microsoft.NET.Sdk.IL , Microsoft.NETCore.App.Runtime.win-x64 , Microsoft.NETCore.ILAsm , runtime.native.System.IO.Ports , System.Reflection.Metadata , System.Reflection.MetadataLoadContext , System.Text.Json
 From Version 10.0.0-alpha.1.24527.3 -> To Version 10.0.0-alpha.1.24564.7

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

Microsoft.SourceBuild.Intermediate.runtime.linux-x64 , Microsoft.NET.Sdk.IL , Microsoft.NETCore.App.Runtime.win-x64 , Microsoft.NETCore.ILAsm , runtime.native.System.IO.Ports , System.Reflection.Metadata , System.Reflection.MetadataLoadContext , System.Text.Json
 From Version 10.0.0-alpha.1.24527.3 -> To Version 10.0.0-alpha.1.24565.3

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

Microsoft.NETCore.Runtime.ICU.Transport
 From Version 10.0.0-alpha.1.24531.1 -> To Version 10.0.0-alpha.1.24568.3

* Update dependencies from https://github.com/dotnet/runtime-assets build 20241118.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 10.0.0-beta.24530.1 -> To Version 10.0.0-beta.24568.1

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

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 10.0.0-alpha.0.24529.1 -> To Version 10.0.0-alpha.0.24568.1

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

Microsoft.SourceBuild.Intermediate.cecil , Microsoft.DotNet.Cecil
 From Version 0.11.5-alpha.24521.1 -> To Version 0.11.5-alpha.24568.1

* Update dependencies from https://github.com/dotnet/source-build-externals build 20241118.1

Microsoft.SourceBuild.Intermediate.source-build-externals
 From Version 10.0.0-alpha.1.24528.1 -> To Version 10.0.0-alpha.1.24568.1

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

Microsoft.SourceBuild.Intermediate.cecil , Microsoft.DotNet.Cecil
 From Version 0.11.5-alpha.24521.1 -> To Version 0.11.5-alpha.24569.4

* Update Versions.props

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

Microsoft.NET.HostModel.TestData
 From Version 10.0.0-beta.24522.1 -> To Version 10.0.0-beta.24568.1

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

Microsoft.DotNet.CilStrip.Sources , Microsoft.NET.HostModel.TestData , 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 10.0.0-beta.24530.1 -> To Version 10.0.0-beta.24571.1

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
2024-11-22 09:42:39 +01:00
dotnet-maestro[bot] 3208c27054
[main] Update dependencies from dotnet/roslyn-analyzers (#109221)
* Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20241024.1

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.12.0-beta1.24516.1 -> To Version 3.12.0-beta1.24524.1

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

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.12.0-beta1.24516.1 -> To Version 3.12.0-beta1.24527.1

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

Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers
 From Version 3.12.0-beta1.24516.1 -> To Version 3.12.0-beta1.24559.1

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Stephen Toub <stoub@microsoft.com>
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
2024-11-22 09:40:46 +01:00
Rolf Bjarne Kvinge 4389f9c54d
Don't log from property accessors in the ILLink task. (#109948)
When executing a remote iOS build from Windows on macOS, the ILLink task is instantiated on the remote macOS machine using a json deserializer.

This means that the properties will be read and written to before the task has been fully initialized, and this happens:

```
Newtonsoft.Json.JsonSerializationException: Error getting value from 'ILLinkPath' on 'Xamarin.MacDev.Tasks.ILLink'.
 ---> System.InvalidOperationException: Task attempted to log before it was initialized. Message was: ILLink.Tasks path: ~/Library/Caches/Xamarin/XMA/Agents/Build/net/illink.dll
   at Microsoft.Build.Shared.ErrorUtilities.ThrowInvalidOperation(String resourceName, Object[] args)
   at Microsoft.Build.Utilities.TaskLoggingHelper.LogMessage(MessageImportance importance, String message, Object[] messageArgs)
   at ILLink.Tasks.ILLink.get_ILLinkPath()
   at Newtonsoft.Json.Serialization.ExpressionValueProvider.GetValue(Object target)
   --- End of inner exception stack trace ---
   at Newtonsoft.Json.Serialization.ExpressionValueProvider.GetValue(Object target)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue(JsonProperty property, JsonConverter propertyConverter, JsonContainerContract containerContract, JsonProperty containerProperty, JsonReader reader, Object target)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject(Object newObject, JsonReader reader, JsonObjectContract contract, JsonProperty member, String id)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
   at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
   at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
   at Newtonsoft.Json.JsonSerializer.Deserialize(JsonReader reader, Type objectType)
   at Xamarin.Messaging.Build.Serialization.TaskSerializer.Deserialize(String content, Type taskType) in D:\a\_work\1\s\src\MSBuild\Xamarin.Messaging.Build.Common\Serialization\TaskSerializer.cs:line 25
   at Xamarin.Messaging.Build.TaskRunner.Execute(String taskName, String inputs) in [...]xamarin-macios/msbuild/Messaging/Xamarin.Messaging.Build/TaskRunner.cs:line 42
   at Xamarin.Messaging.Build.ExecuteTaskMessageHandler.<>c__DisplayClass5_0.<ExecuteAsync>b__0() in [...]xamarin-macios/msbuild/Messaging/Xamarin.Messaging.Build/Handlers/ExecuteTaskMessageHandler.cs:line 40
   at System.Threading.Tasks.Task`1.InnerInvoke()
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.ExecutionContext.RunFromThreadPoolDispatchLoop(Thread threadPoolThread, ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at Xamarin.Messaging.Build.ExecuteTaskMessageHandler.ExecuteAsync(ExecuteTaskMessage message) in [...]xamarin-macios/msbuild/Messaging/Xamarin.Messaging.Build/Handlers/ExecuteTaskMessageHandler.cs:line 28
   at Xamarin.Messaging.Client.RequestHandler`2.HandleAsync(TMessage message) in D:\a\_work\1\s\src\Xamarin.Messaging.Client\Handlers\RequestHandler.cs:line 68
   at Xamarin.Messaging.Client.MessageHandlerManager.<>c__DisplayClass12_1`2.<<RegisterHandlerAsync>b__2>d.MoveNext() in D:\a\_work\1\s\src\Xamarin.Messaging.Client\MessageHandlerManager.cs:line 96
--- End of stack trace from previous location ---
   at Xamarin.Messaging.Client.MessagingClient.ReplyAsync[TRequest,TResponse](IRequest`1 request, MessagePriority priority, Func`1 replyFunctionAsync) in D:\a\_work\1\s\src\Xamarin.Messaging.Client\MessagingClient.cs:line 351: 11/18/2024 10:23:11Z
```

So move the logging statement to when it the property in question is used.
2024-11-22 08:30:31 +01:00
Clinton Ingram 35f2b1309a
Add GFNI Intrinsics (#109537)
* add GFNI intrinsics

* add tests

* rename file

* add missing tests and AOT handling

* fix build

* fix test result
2024-11-21 20:01:20 -08:00
Aman Khalid 7fe4e4fc17
JIT: Fix JITDUMP null dereference during value numbering (#110066) 2024-11-21 18:45:35 -05:00
Clinton Ingram 975f4ea5fc
JIT: Improve containment for widening intrinsics (#109474)
* improve containment for widening intrinsics

* apply formatting patch

* tidying

* use tuple type for load size factor

* apply formatting patch

* fix build

* whitespace

* revert emitter changes
2024-11-21 15:23:34 -08:00
Elinor Fung 09b30a4c06
[cdac] Make contracts tests use mock/placeholder target instead of actual target (#110027)
- Separate helpers for testing an actual contract descriptor from helpers for mock memory
  - Tests/helpers for the contract descriptor are now under the `ContractDescriptor` folder
- Make all contracts tests use the mock target instead of creating a contract descriptor and using the `ContractDescriptorTarget`
- Update root namespaces from `Microsoft.Diagnostics.DataContractReader.UnitTests` -> `Microsoft.Diagnostics.DataContractReader.Tests` to match assembly name
2024-11-21 13:11:38 -08:00
Alan Hayward c31bb93ea3
Arm64-SVE: Fix up comments in optimizemaskconversions (#109955)
Co-authored-by: Kunal Pathak <Kunal.Pathak@microsoft.com>
2024-11-21 10:45:46 -08:00
Aman Khalid 7c1f78fb07
JIT: Replace `BlockSet` with `BitVec`, and remove BB epoch (#110034)
Part of #107749. Prerequisite for #110026.

Use postorder number-based BitVecs in RBO and block layout.
Use bbID-based BitVecs in fgIncorporateProfileData. This runs early enough in the JIT frontend such that I would expect bbIDs and bbNums to be 1:1, so I don't expect any TP impact from this change.
Switch descriptor creation still uses bbNums as a key into a BitVec as a workaround for BB epoch invariants -- I'll try switching this over to bbID in a follow-up to evaluate the TP cost of a sparser bitset.
2024-11-21 13:24:33 -05:00
Alex Rønne Petersen 290aa3dbbe
Fix hostfxr.h to be valid C again. (#109763) 2024-11-21 10:21:37 -08:00
Sven Boemer 36903dc694
ILC: Allow OOB reference to upgrade framework assembly (#109988)
* ILC: Allow OOB reference to upgrade framework assembly
* Log error for SPC
2024-11-21 10:07:16 -08:00
David Wrighton eb456e6121
Move unboxing helpers to managed code (#109135)
Move the unboxing helpers to managed code.

Behavior is basically identical except for the Unbox_Nullable paths, which required some investigation to find the fastest implementation. Notably, there interruptibility of managed code makes the copying/zeroing of values more difficult, but with the opportunity/requirement to specialize the codebase came a few micro-optimizations that are somewhat nice. Overall I don't expect anyone to notice the performance changes here, but since my earlier code was about 2X slower than the native implementation, I did feel the need to optimize until everything looked good.

Performance results:

| TestName | With PR | Without PR | % Speedup |
| --- | --- | --- | --- |
|                     TestJustAPrimitive| 1217.0047| 1221.203| 0.34%   |
|                         TestJustObject| 1212.6415| 1211.6437|-0.08%  |
|                     TestJust5Primitive| 1496.5304| 1522.4968|1.74%   |
|                        TestJust5Object| 1461.0507| 1488.3328|1.87%   |
|                    TestJust10Primitive| 1473.2814| 1493.5238|1.37%   |
|                       TestJust10Object| 3215.6339| 2854.6186|-11.23% |
|    TestJustAPrimitiveNullableWithValue| 2727.9085| 5182.2611|89.97%  |
|        TestJustObjectNullableWithValue| 3148.9484| 5672.2985|80.13%  |
|    TestJust5PrimitiveNullableWithValue| 5443.9232| 7795.6109|43.20%  |
|       TestJust5ObjectNullableWithValue| 6492.9071| 8095.1508|24.68%  |
|   TestJust10PrimitiveNullableWithValue| 6022.6274| 8723.572| 44.85%  |
|      TestJust10ObjectNullableWithValue| 7728.3239| 9671.1382|25.14%  |
|         TestJustAPrimitiveNullNullable| 1786.1337| 2230.0932|24.86%  |
|             TestJustObjectNullNullable| 1675.0683| 2326.0395|38.86%  |
|         TestJust5PrimitiveNullNullable| 2921.9497| 3298.4642|12.89%  |
|            TestJust5ObjectNullNullable| 3389.4043| 3615.3131|6.67%   |
|        TestJust10PrimitiveNullNullable| 3050.809|	 4054.9683|32.91%  |
|           TestJust10ObjectNullNullable| 4658.8316| 5335.0686|14.52%  |

Results are very positive, or within the margin of error in this test suite. These results were generated using a small benchmark which mostly targeted measuring the performance of the Unbox_Nullable helper, as it has the most complex and potentially slow code. Generally the impact on that helper is that the performance of the type system portion of the helper is faster, and the performance of code which actually copies the contents of a valuetype is a little better. This isn't quite a fair test of managed vs native performance though, as I took the opportunity to restructure some of the memory on `MethodTable` so that it could more easily be read in managed code, and that happened to make a fair bit of complex code become simpler and thus faster.
2024-11-21 09:55:10 -08:00
Brian Chavez 25f96730f6
threads.h: Fix up grammar/spelling in vm/threads.h (#109972)
* threads.h: Fix up grammar/spelling in vm/threads.h

* Fix up other code comment instances of insur* -> ensur*
2024-11-21 09:49:49 -08:00
dotnet-maestro[bot] 373525f0b7
[main] Update dependencies from dotnet/roslyn (#109540)
* Update dependencies from https://github.com/dotnet/roslyn build 20241104.8

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24554.8

* Update dependencies from https://github.com/dotnet/roslyn build 20241105.1

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24555.1

* Update dependencies from https://github.com/dotnet/roslyn build 20241106.10

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24556.10

* Update dependencies from https://github.com/dotnet/roslyn build 20241107.8

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24557.8

* Update dependencies from https://github.com/dotnet/roslyn build 20241108.12

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24558.12

* Update dependencies from https://github.com/dotnet/roslyn build 20241111.1

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24561.1

* Update dependencies from https://github.com/dotnet/roslyn build 20241113.22

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24563.22

* Update dependencies from https://github.com/dotnet/roslyn build 20241115.1

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24565.1

* Update dependencies from https://github.com/dotnet/roslyn build 20241115.9

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24565.9

* Update dependencies from https://github.com/dotnet/roslyn build 20241117.1

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24567.1

* Update dependencies from https://github.com/dotnet/roslyn build 20241118.2

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24568.2

* Update dependencies from https://github.com/dotnet/roslyn build 20241120.1

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24570.1

* Update dependencies from https://github.com/dotnet/roslyn build 20241120.4

Microsoft.SourceBuild.Intermediate.roslyn , Microsoft.CodeAnalysis , Microsoft.CodeAnalysis.CSharp , Microsoft.Net.Compilers.Toolset
 From Version 4.13.0-2.24531.4 -> To Version 4.13.0-2.24570.4

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
2024-11-21 18:48:54 +01:00
dotnet-maestro[bot] cdb7a207df
[main] Update dependencies from dotnet/arcade (#109638)
* Update dependencies from https://github.com/dotnet/arcade build 20241107.1

Microsoft.SourceBuild.Intermediate.arcade , 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.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24556.2 -> To Version 10.0.0-beta.24557.1

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

Microsoft.SourceBuild.Intermediate.arcade , 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.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24556.2 -> To Version 10.0.0-beta.24558.2

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

Microsoft.SourceBuild.Intermediate.arcade , 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.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24556.2 -> To Version 10.0.0-beta.24560.1

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

Microsoft.SourceBuild.Intermediate.arcade , 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.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24556.2 -> To Version 10.0.0-beta.24561.1

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

Microsoft.SourceBuild.Intermediate.arcade , 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.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24556.2 -> To Version 10.0.0-beta.24562.5

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

Microsoft.SourceBuild.Intermediate.arcade , 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.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24556.2 -> To Version 10.0.0-beta.24562.10

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

Microsoft.SourceBuild.Intermediate.arcade , 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.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24556.2 -> To Version 10.0.0-beta.24562.15

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

Microsoft.SourceBuild.Intermediate.arcade , 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.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24556.2 -> To Version 10.0.0-beta.24563.7

* Update nonportable to portableBuild switch

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

Microsoft.SourceBuild.Intermediate.arcade , 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.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24556.2 -> To Version 10.0.0-beta.24564.1

* Don't build bundleproj in source-build

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

Microsoft.SourceBuild.Intermediate.arcade , 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.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24556.2 -> To Version 10.0.0-beta.24570.1

* Set UseMonoRuntime=false to workaround WABT restore issue

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

Microsoft.SourceBuild.Intermediate.arcade , 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.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24556.2 -> To Version 10.0.0-beta.24570.4

---------

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: Alexander Köplinger <alex.koeplinger@outlook.com>
2024-11-21 18:46:16 +01:00
Badre BSAILA 0d55c5bb4f
MailAddress accepts invalid email address with consecutive dots (#109690)
* MailAddress accepts invalid email address with consecutive dots

* update DotAtomReader class comment
2024-11-21 17:17:42 +01:00
kasperk81 d2fdf24dcc
fix stack 2x2 tensor along dimension 1 (#108620) 2024-11-21 07:59:27 -08:00
Egor Bogatov c929990f71
Small clean up in assertionprop for relops (#109987) 2024-11-21 16:45:34 +01:00
Michal Strehovský 98049e56a4
Delete pragma suppression for warning disabled with UnconditionalSuppressMessage (#110030)
https://github.com/dotnet/runtime/pull/109963#discussion_r1850060556
2024-11-21 12:50:10 +01:00
Michal Strehovský ffb0bfff31
Replace DAMT.All with more restricted annotation on InvokeMember/FindMembers/DeclaredMembers (#109801)
I'm looking at places we use .All to see if the new annotations could help. Here we don't need the new annotations, this was always expressible. I can only assume the reason for .All was laziness. This was at a time when we believed .All "just keeps a bit more" and we didn't consider the impact of marking interface methods implemented by the class, or the impact of warnings due to .All capturing things that are not safe to reflection-call.

This is a breaking change in theory, should someone implement `IReflect` or derive from `System.TypeInfo` - they need to update the annotations.
2024-11-21 12:49:48 +01:00
Stephen Toub 09d196184b
Fix PooledByteBufferWriter handling of sizeHint <= 0 (#110031)
* Fix PooledByteBufferWriter handling of sizeHint <= 0

* Add MinimumBufferSize constant and update usage
2024-11-21 08:43:23 +00:00
Michal Strehovský b66200e544
Update DynamicallyAccessedMembers annotation on EventSource (#110001)
This takes advantage of #109814. This is in theory a breaking change in case someone took advantage
of our annotation and is doing their own reflection on `EventSource` descendants.

Someone else reflecting on EventSource is problematic however. We placed around various suppressions
due to our own annotations like this:

0d62887a30/src/libraries/System.Private.CoreLib/src/System/Diagnostics/Tracing/EventSource.cs (L414-L424)

It means that if someone else is reflection-accessing these, they would not get a trimming warning.
Hopefully, nobody does that. This PR also assumes that nobody does that (and the PR should therefore
not be breaking in practice).

We annotate the class for our purposes, but someone else could be taking advantage of that in their own code.
2024-11-20 23:41:04 -08:00
Khushal Modi 5345dc51d3
Adding CPUID for AVX10.2 (#109302)
* Add CPUID for AVX10.2

* Handle AVX10.2 ISAs in missing places

* Remove APX_X64 since it is unused

* remove log file and change handling for AVX10v2_V512

* resolve merge errors
2024-11-20 22:02:44 -08:00
Sven Boemer 3b91ac6019
Remove unsupported _AggressiveAttributeTrimming switch (#109994)
This switch was never documented and is not supported, because it can
cause behavior differences when trimming without any warnings.
2024-11-20 15:45:51 -08:00
Jackson Schuster 1474fc3faf
Update resourceManagement.yml (#110014)
Tag dotnet/illink on linker area
2024-11-20 15:55:08 -05:00
Clinton Ingram 08a36ca95e
Add VPCLMULQDQ intrinsics (#109137)
* add vpclmulqdq intrinsics

* add missing break

* add alternate instruction def for evex encoding

* rename instruction

* whitespace

* re-run thunk generator

* fix AOT instruction sets

* address feedback

* apply formatting patch

* address feedback round 2

* add missing brace

* fix smoketest expected results

* fix suffix order

* handle implied V512 support in AOT

* remove more unnecessary X64 ISA variants

---------

Co-authored-by: Tanner Gooding <tagoo@outlook.com>
2024-11-20 12:33:43 -08:00
Marek Fišera b85f9f621b
[wasm] Run downlevel tests only on main (#109919) 2024-11-20 14:11:26 -06:00
dotnet-maestro[bot] 2d108f9c3c
Update dependencies from https://github.com/dotnet/emsdk build 20241119.4 (#110010)
Microsoft.SourceBuild.Intermediate.emsdk , Microsoft.NET.Workload.Emscripten.Current.Manifest-10.0.100.Transport
 From Version 10.0.0-alpha.1.24568.1 -> To Version 10.0.0-alpha.1.24569.4

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
2024-11-20 14:10:34 -06:00
Aman Khalid 00ba6d58fa
JIT: Refactor 3-opt utilities to facilitate expansion (#109982)
Part of #107749. Follow-up to #103450. To facilitate implementing a global variant of 3-opt alongside the greedy variant, this moves some shared components to helper methods. I want to do this as a separate PR to ensure this change is truly no-diff, and has minimal (if any) TP impact.
2024-11-20 13:11:19 -05:00
Carlos Sánchez López 5c218aba3f
Switch to non-incremental servicing and update ApiCompatNetCoreAppBaselineVersion to 9.0.0 (#109790)
* Update ApiCompatNetCoreAppBaselineVersion to 9.0.0

* Switch to non-incremental servicing by manually backporting 824bdd214e from release/9.0
---------
Co-authored-by: Eric StJohn <ericstj@microsoft.com>

* Result of running: dotnet build src/libraries/apicompat/ApiCompat.proj /p:ApiCompatGenerateSuppresionFile=true

* Update suppression files

* Update NetCoreAppLatestStabel suppression file

---------

Co-authored-by: Viktor Hofer <viktor.hofer@microsoft.com>
2024-11-20 17:45:49 +01:00
Max Charlamb 0b8addb009
Allow nibblemap deletes to be no-op (#109976)
* allow no-op deletes

* improve comment
2024-11-20 10:33:52 -05:00
dotnet-maestro[bot] 871f679da2
[main] Update dependencies from dotnet/source-build-reference-packages (#109702)
* Update dependencies from https://github.com/dotnet/source-build-reference-packages build 20241108.1

Microsoft.SourceBuild.Intermediate.source-build-reference-packages
 From Version 10.0.0-alpha.1.24555.1 -> To Version 10.0.0-alpha.1.24558.1

* Update dependencies from https://github.com/dotnet/source-build-reference-packages build 20241111.2

Microsoft.SourceBuild.Intermediate.source-build-reference-packages
 From Version 10.0.0-alpha.1.24555.1 -> To Version 10.0.0-alpha.1.24561.2

---------

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
2024-11-20 15:19:56 +01:00
Egor Bogatov 50cbcb3777
JIT: (x u>> cns) -> [0..(x's max value >> cns)] (#109900) 2024-11-20 14:20:40 +01:00
Radek Doulik 1c54b485e4
[wasm] Re-enable skiasharp WBT tests (#109232)
* [wasm] Re-enable skiasharp WBT tests

* Disable Debug/AOT combination

That would trigger build error, because we don't support that combination
anymore

* Change order of native libs

Put NativeFileReference files after the runtime libs. This server as
a workaround of #109289

* Update llvm, emsdk and icu deps

* Revert "Change order of native libs"

This reverts commit e320fd67aa.
2024-11-20 14:11:50 +01:00
Eirik Tsarpalis b5750e65ae
Add SseFormatter (#109832)
* Add SseFormatter.

* Update src/libraries/System.Net.ServerSentEvents/src/Resources/Strings.resx

Co-authored-by: Stephen Toub <stoub@microsoft.com>

* Document SseItem exceptions.

* Misc improvements and fixes.

* Reinstate ordering of parameters in serialization callback.

* Add SseItem<T>.ReconnectionInterval.

* Address feedback.

* Add parser validation for too small or too large retry intervals.

* Update src/libraries/System.Net.ServerSentEvents/src/System/Net/ServerSentEvents/SseFormatter.cs

Co-authored-by: Stephen Toub <stoub@microsoft.com>

* Handle CR line breaks.

* Simplify PooledByteBufferWriter.

---------

Co-authored-by: Stephen Toub <stoub@microsoft.com>
2024-11-20 09:57:42 +00:00
Radek Zikmund 6be24fd37e
Use explicit full-path for loading MsQuic.dll on Windows (#109963)
* Use explicit full-path for loading MsQuic.dll on Windows

* Suppress IL3000 in MsQuicApi constructor

A call to `Assembly.Location` was added in a recent fix. It has `IL30000` suppressed via `#pragma warning disable`, but that only applies to the compilation of the library itself. Consumers will hit it when doing something like publishing their app as NativeAOT.

This change adds an `[UnconditionalSuppressMessage]` to the `MsQuicApi` static constructor such that `IL30000` should also be suppressed for apps consuming the runtime.

This was caught in an aspnetcore deps flow PR coming from runtime.

---------

Co-authored-by: Elinor Fung <elfung@microsoft.com>
2024-11-20 09:05:53 +01:00
Michal Strehovský 0d62887a30
Fix dataflow analysis for GetNestedType (#109814)
https://github.com/dotnet/linker/pull/2133 adjusted rooting logic to keep `.All` on all nested types preserved with PublicNestedTypes/NonPublicNestedTypes. The PR resolved the bug and the analysis work that was identified in the review as necessary never happened. So we just uselessly preserve members.

This adds dataflow analysis to propagate this. Since we never had the dataflow analysis, I'm exposing this not as .All, but a subset of .All that doesn't do the worst part - doesn't require reflectability of interface methods.
2024-11-20 07:20:10 +01:00
Egor Bogatov d0b4ca6ee4
JIT: Fix BCE regression (#109466) 2024-11-20 05:16:32 +01:00
Egor Bogatov db6cef1b4f
JIT: Unroll more Equals/StartsWith/EndsWith on arm64 (#109036) 2024-11-20 05:16:07 +01:00
Elinor Fung 2eb6a2a0d4
[cdac] Simplify usage of TestPlaceholderTarget in tests (#109873)
- Make `TestPlaceholderTarget` (mock target) constructor take type infos and global values
- Handle reading of global values in mock target implementation
- Use Moq for creating a `ContractRegistry` instead of our own explicit implementation
- Remove subclasses of `TestPlaceholderTarget`
2024-11-19 18:44:57 -08:00