-
Notifications
You must be signed in to change notification settings - Fork 214
Merge from dotnet/runtime #123
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* add tests to increase enum serialization code coverage * implement feedback and add test to cover naming policy scenario * remove unnecessary bound check now that all primitive types are supported * Revert "remove unnecessary bound check now that all primitive types are supported" This reverts commit 0a6a345ed3eaf65be8efbb51c6258a8448aaf9c1. * implement review feedback remove unnecessary serializer options in test rename JsonNamingPolicy ToLower -> ToLowerNamingPolicy * Remove commented-out code Co-authored-by: David Cantú <[email protected]>
…arcade Microsoft/vstest dotnet/llvm-project dotnet/icu (#42201) [master] Update dependencies from dotnet/xharness mono/linker dotnet/arcade Microsoft/vstest dotnet/llvm-project dotnet/icu - Merge branch 'master' into darc-master-c2f56120-c0a9-49ac-83ec-d0550f2e6a36 - Fix merge conflict - Revert override of local changes to send-to-helix.yml - Fix path to ILLink.Tasks.dll - Revert override of local changes to send-to-helix.yml - Revert override of local changes to send-to-helix.yml - Fix path to ILLink.Tasks.dll - Fix another path to ILLink.Tasks.dll
…(#42470) * Revert "Make Console.ReadKey() distinguish between CR and LF inputs (#37491)" This reverts commit a62bfcb. * Account for terminals that have ICRNL disabled * Add manual tests that validates the current \n ReadKey() behaviour on Unix
…42609) - Style analyzer fixes - ARM64 port
* Fix a few Socket.SendFile issues - The string argument in the single-argument overload should be nullable. - All overloads on Windows should allow a null file path, but they've been throwing an exception - On Linux, data was silently truncated when sending a file larger than int.MaxValue with BeginSendFile. * Address PR feedback
The singilefilehost needs to follow the libraries build in terms of how it links to OpenSSL: if it's a non-portable build, the singlefilehost needs to link to OpenSSL via linker arguments. The installer also needs to have FEATURE_DISTRO_AGNOSTIC_SSL defined just like it is defined for the libraries build. Fixes: #41768
Fixes:
stress client double read of content fixed
fixed stress client hangs at start and stop
leveraged HttpVersionPolicy
increased pipeline timeout since we doubled the runs
fixed base docker images to avoid missing IO.Pipelines Kestrel exception.
Re-hauled tracing:
added server file logging
added log file rotation
Minor renames.
Contributes to: #42211 and #42198
Adds a new flowgraph checker that tries to verify that the profile data is self-consistent. Use `COMPlus_JitProfileChecks=1` to enable in dumps, `=2` to raise asserts if issues are found. I plan on using this to start fixing the issues it finds and then perhaps gradually enable more stringent checking.
…bid-suspend-for-debugger region (#42587) - Followup to dotnet/runtime#40060 - In short timing windows if a thread is placed in a pending-suspend-for-debugger state while in a forbid-suspend-for-debugger region, from the above PR it would not suspend for the debugger but it was missed that it can also get stuck in a perpetual spin-wait while entering cooperative GC mode. This causes the thread to not suspend for the debugger (VS times out after waiting) and the thread can only progress by unmarking it for debugger suspension. - Fixed to break the spin-wait by checking whether the thread is in the forbid region Fix for dotnet/runtime#42375 in master
…622) * Return null from ClaimsPrincipal.Current if no thread principal. In the .NET Framework, the AppDomain's default PrincipalPolicy is UnauthenticatedPrincipal. When falling back to the thread's principal, this would no throw because a GenericPrincipal was returned. If the policy was changed to NoPrincipal, ClaimsPrincipal.Current would throw constructing the ClaimsPrincipal since there is no principal. However that behavior was opt-in. In .NET Core, the default policy was changed to NoPrincipal, which would mean unless a principal was explicitly set, Current would always throw. This changes the behavior to return null instead of throw for NoPrincipal. This is to continue supporting the existing behavior in .NET Core 3 of returning null if there is no principal, but continue to allow falling back to the thread's principal. * Code review feedback. Co-authored-by: Stephen Toub <[email protected]> * Fix typos Co-authored-by: Stephen Toub <[email protected]>
* Delete unused Monitor.Wait argument * Move Monitor to shared partition
We experience CLR crash on some architectures (at least in x86) in case of unhandled managed exception. libunwind steps to the very end of a stack, and if .eh_frame info is correct, it returns with retcode 0 and ip=0 from unw_step, then PAL calls unw_is_signal_frame with c->validate==0 which in turn dereferences zeroed ip in access_mem. libunwind spec says that retcode 0 from unw_step means very end of a stack, so PAL should not expect any frames, signal or not. It should convert cursor back to SEH representation and return with TRUE.
* Ensure Enumerable methods are preserved by System.Linq.Querable When using System.Linq.Queryable against an in-memory collection, and trimming the application, the underlying Enumerable methods need to be preserved by the linker. Annotating each Queryable method with a DynamicDependency to the corresponding Enumerable method will fix this scenario. Fix #42536
Change the `-altjit` flag to require passing a JIT filename. There are too many altjits (cross-compile JITs) available now to be able to pick a good default, so force the user to pick.
* Support cp1252 codepage alias * Apply suggestions from code review Co-authored-by: Stephen Toub <[email protected]> * Fix teh License comment in the file headers Co-authored-by: Stephen Toub <[email protected]>
- Add all IDEXXXX warnings to ruleset, but as hidden for now - Enable IDE0073: file header mismatch
d32c9ed to
5c245f9
Compare
jakobbotsch
added a commit
to jakobbotsch/runtimelab
that referenced
this pull request
Apr 9, 2025
* JIT: Introduce `LclVarDsc::lvIsMultiRegDest`
With recent work to expand returned promoted locals into `FIELD_LIST`
the only "whole references" of promoted locals we should see is when
stored from a multi-reg node. This is the only knowledge the backend
should need for correctness purposes, so introduce a bit to track this
property, and switch the backend to check this instead.
The existing `lvIsMultiRegRet` is essentially this + whether the local
is returned. We should be able to remove this, but it is currently used
for some heuristics in old promotion, so keep it around for now.
* JIT: Add some more constant folding in lowering
Add folding for shifts and certain binops that are now getting produced
late due to returned `FIELD_LIST` nodes.
win-arm64 example:
```csharp
[MethodImpl(MethodImplOptions.NoInlining)]
static ValueTask<byte> Foo()
{
return new ValueTask<byte>(123);
}
```
```diff
G_M17084_IG02: ;; offset=0x0008
mov x0, xzr
- mov w1, dotnet#1
- mov w2, wzr
- mov w3, dotnet#123
- orr w2, w2, w3, LSL dotnet#16
- orr w1, w2, w1, LSL dotnet#24
- ;; size=24 bbWeight=1 PerfScore 4.00
+ mov w1, #0x17B0000
+ ;; size=8 bbWeight=1 PerfScore 1.00
```
* Feedback
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.