forked from dotnet/runtime
-
Notifications
You must be signed in to change notification settings - Fork 0
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
[pull] main from dotnet:main #46
Merged
Merged
Conversation
This file contains 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
* Update dependencies from https://github.com/dotnet/installer build 20230927.3 Microsoft.Dotnet.Sdk.Internal From Version 9.0.100-alpha.1.23474.1 -> To Version 9.0.100-alpha.1.23477.3 * [wasm] WBT: Update skiasharp reference `blz_deploy_on_build_Debug_True_npl3f0nk_qee.csproj : error NU1903: Package 'SkiaSharp' 2.88.4-preview.76 has a known high severity vulnerability` * Update dependencies from https://github.com/dotnet/installer build 20230927.26 Microsoft.Dotnet.Sdk.Internal From Version 9.0.100-alpha.1.23474.1 -> To Version 9.0.100-alpha.1.23477.26 --------- Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com> Co-authored-by: Ankit Jain <[email protected]>
Resolves #78681 (or "there's nothing else we'd be willing to do for it"). This is the rest of what I implemented trying to get `SearchValues.Create(someVeryLongString)` to preinitialize. It doesn't actually enable more `SearchValues` scenarios because I eventually hit codepaths that would require us to implement hardware intrinsics support in the interpreter. The `SearchValues` scenarios that we do support were implemented in #92470 and #92666. But since I already implemented this, here it is; maybe it will be useful for something else: * Support for modelling `Span<X>`, including creating it from stackalloc * Support for math/comparisons with native int * `Unsafe.Add`
* Flesh out TensorPrimitives XML docs * Address PR feedback - Remove use of FusedMultiplyAdd from all but CosineSimilarity - Remove comments about platform/OS-specific behavior from Add/AddMultiply/Subtract/Multiply/MultiplyAdd/Divide/Negate - Loosen comments about NaN and which exact one is returned * Address PR feedback
The interference checking in lowering bases some of its checks on GenTree::gtFlags. This is conservative since it includes effect flags of operands. For LIR this does not really make sense and ends up being conservative. This PR replaces the relevant uses of gtFlags with a new GenTree::OperEffects() that computes the relevant effect flags for the node, excluding operands. We already know how to recompute effect flags other than GTF_GLOB_REF and GTF_ORDER_SIDEEFF. This PR adds functions for these as well (the GTF_GLOB_REF version GenTree::OperRequiresGlobRefFlag is courtesy of @SingleAccretion). For GTF_ORDER_SIDEEFF we add a GenTree::OperSupportsOrderingSideEffect which captures explicitly (and conservatively) the current cases where we are setting the flag, and only allows these cases to support the flag. Setting the flag for other cases may result in the flag being removed or ignored. There is a new `GenTree::SetHasOrderingSideEffect` to add the flag which also asserts that it is only added for trees that are supported. Fix #92699
* [wasm] Supress policheck warning in blazor-sample Replace the offending part in the layout name. I think the suit-spade is false positive, I used just sp in place of spade to silence it. * Feedback
- Removes unused functions - Removes cmake configure checks for functions/headers that are no longer needed - Renames HAVE_UWP_WINAPI_SUPPORT to HAVE_APP_WINAPI_SUPPORT - Move MSVC warning disables into cmake so it is more visible Co-authored-by: Johan Lorensson <[email protected]>
SSA definitions cannot be deleted.
* Implement StoreVector128x2 for Arm64 * Remove redundant implmentations * Implement StoreVector64x2 for Arm64 * Remove StoreVector64x2 implementation for Arm64 This reverts commit 49ef72e. * Fix instruction type for the StoreVector128x2 intrinsic * Review comments: * Arrange APIs alphabetically * Add StoreVector64x2 * fix the invalid instructions * Add test cases * Update src/coreclr/jit/hwintrinsicarm64.cpp Co-authored-by: Bruce Forstall <[email protected]> --------- Co-authored-by: Kunal Pathak <[email protected]> Co-authored-by: Bruce Forstall <[email protected]>
Some operations would produce incorrect results if the same span was passed as both an input and an output. When vectorization was employed but the span's length wasn't a perfect multiple of a vector, we'd do the standard trick of performing one last operation on the last vector's worth of data; however, that relies on the operation being idempotent, and if a previous operation has overwritten input with a new value due to the same memory being used for input and output, some operations won't be idempotent. This fixes that by masking off the already processed elements. It adds tests to validate in-place use works, and it updates the docs to carve out this valid overlapping.
In the original PR we could not get this this working due to some conservative interference. This now does the right thing with #92710 merged. Also change LowerCallMemcmp/LowerCallMemmove to return next node to lower just to align it a bit more with other functions.
…92813) Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Move it out of codegencommon.cpp and into scopeinfo.cpp. This is both to centralize the code but also to reduce the size of the very large codegencommon.cpp.
superpmi.py will pass this through from the `-jitoption` / `-base_jit_option` / `-diff_jit_option` to superpmi.exe `-jitoption` and `-jit2option`. Currently, the format is `key=value`. I wrap invocation of superpmi.py with Windows batch file scripting, which has an annoying problem of "eating" the equals size `=`. This works around that problem. I can't think of any case where `#` is needed in a key or value, hence that choice as an additional option.
…n the crossgen2 that we are shipping (#92677)
…ser (#92695) * fix Common.Tests.GetPrettyName_CannotRead_ReturnsNull test for root user * remove direct call to libc in Common.Tests.GetPrettyName_CannotRead_ReturnsNull * Update src/libraries/Common/tests/Tests/Interop/OSReleaseTests.cs * split Common.Tests.OSReleaseTests.GetPrettyName_CannotRead_ReturnsNull into two test cases * replace ifs with ConditionalFact in Common.Tests.OSReleaseTests class --------- Co-authored-by: Dan Moseley <[email protected]>
…230928.5 (#92817) Microsoft.Dotnet.Sdk.Internal From Version 9.0.100-alpha.1.23477.26 -> To Version 9.0.100-alpha.1.23478.5 Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
…uild 20230928.1 (#92814) Microsoft.CodeAnalysis.Analyzers , Microsoft.CodeAnalysis.NetAnalyzers From Version 3.11.0-beta1.23475.2 -> To Version 3.11.0-beta1.23478.1 Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Set JitSplitFunctionSize to either 4 or 200 under new STRESS_UNWIND mode.
On some platforms, CodeGen::genCallFinally() will remove the jump between a finally block in a call-finally pair to its jump target if the target is its immediate successor in the block list (in other words, we just fall through). However, if we are doing hot/cold splitting, it is possible for the finally block to be the last hot block, and its target the first cold block. Thus, if the two are contiguous in the block list but in separate regions, we must always emit a jump.
* Vectorize TensorPrimitives.ConvertToSingle * Address PR feedback
…ue. (#92835) * Apply sequence equality comparison to the final Regex incremental value. * Avoid using SequenceEqual
…ng on named mutexes (#92603) * Include info about system call errors in some exceptions from operating on named mutexes - Added new PAL APIs for creating and opening mutexes that take a string buffer for system call error info. These are called with a stack-allocated buffer and upon error the system call errors are appended to the exception message. - When there is a system call failure that leads to the PAL API failing, some info is appended to the error string, including the system call, relevant arguments, return value, and `errno` - `chmod` on OSX seemingly can be interrupted by signals, fixed to retry. Also fixed a couple other small things. Fixes #89090
…via-symbols for it (#92555) * [amd64/arm64] Split off patched code into separate .S file and disable subsections-via-symbols for it * [amd64/arm64] Split off patched code into separate .asm file [arm64] Move JIT_UpdateWriteBarrierState out of the patched region to match implementation in .S file * Remove NO_SUBSECTIONS_VIA_SYMBOLS
Fix prolog handling in the case where the in-body destination register for an HFA overlaps with one of the HFA argument registers. For instance the HFA is passed in `s0-s3` and needs to end up in `v3`. This requires special handling because the dependence analysis done in `genFnPrologCalleeRegArgs` only tracks entire registers, not parts of registers. Fixes #83167
* Update targetingpacks.targets The .NET 8 Preview 6 SDK has the features required to simplify the targetingpacks.targets logic. * Update targetingpacks.targets * Update targetingpacks.targets * Update known items * Update targetingpacks.targets * Update targetingpacks.targets
* [wasm] Add support for installing V8 * [wasm] Use provisioned v8 for library tests * [wasm] WBT: Use provisioned v8 * [wasm] enable use of provisioned v8 for library tests * [wasm] add MSBUILD_ARGS for build-runtime-tests make target * update docs * Don't install v8 for runtime tests * [wasm] CI: trigger library test jobs when chrome version changes * Disable provisioning v8 when building runtime tests * address review feedback * [wasm] Disable installing v8 for runtime tests * Address review feedback * fix stamping for v8
These showed up in ASP.NET Stage1 and were low hanging enough.
[main] Update dependencies from dotnet/emsdk dotnet/sdk
* Update dependencies from https://github.com/dotnet/installer build 20230929.5 Microsoft.Dotnet.Sdk.Internal From Version 9.0.100-alpha.1.23478.5 -> To Version 9.0.100-alpha.1.23479.5 * Update dependencies from https://github.com/dotnet/installer build 20230929.5 Microsoft.Dotnet.Sdk.Internal From Version 9.0.100-alpha.1.23478.5 -> To Version 9.0.100-alpha.1.23479.5 --------- Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
…addr. (#92658) The previous code would spill the valuetype when it was passed by addr, and another bblock could try to read from the unitialized stack location.
#92694) * [RISC-V] Fix target type unsignedness detection in genFloatToIntCast() treeNode->gtFlags & GTF_UNSIGNED means unsignedness of the source type. Use varTypeIsUnsigned instead which checks for VTF_UNS on target type classification. Fixes TryConvertToSaturatingUInt64Test and TryConvertToTruncatingUInt64Test from System.Runtime.Numerics.ComplexTests_GenericMath. * Fix compilation without FEATURE_TIERED_COMPILATION
…92403) * Remove duplicated marshaling of return value for JSExport * Move unmarshal and return value marshal into try block
* Update intellisense.targets * Update System.Text.Json.csproj
* Ensure the adapter name 100% matching when parsing proc/net/dev * Update src/libraries/System.Net.NetworkInformation/src/System/Net/NetworkInformation/StringParsingHelpers.Statistics.cs Co-authored-by: Miha Zupan <[email protected]> * Move the stackalloc out of the loop * Update src/libraries/System.Net.NetworkInformation/src/System/Net/NetworkInformation/StringParsingHelpers.Statistics.cs Co-authored-by: Miha Zupan <[email protected]> --------- Co-authored-by: Miha Zupan <[email protected]>
This should improve the startup perf and size.
The latest build of VS carries a C/C++ compiler which produces warning C5271: ``` src\native\corehost\test\ijw\ijw.cpp(6): warning C5271: consider replacing #using <System.Console.dll> with command line argument /FU "F:\dotnet\runtime2\.dotnet\packs\Microsoft.NETCore.App.Ref\8.0.0-rc.1.23414.4\ref\net8.0\System.Console.dll" src\native\corehost\test\ijw\ijw.cpp(7): warning C5271: consider replacing #using <System.Runtime.Loader.dll> with command line argument /FU "F:\dotnet\runtime2\.dotnet\packs\Microsoft.NETCore.App.Ref\8.0.0-rc.1.23414.4\ref\net8.0\System.Runtime.Loader.dll" ``` This breaks the build on Windows. For now I'm disabling the warning as the real fix is more complex (we would need to calculate the path to the required assemblies in CMake somehow).
.. on CI, or in a container (like codespaces). Without this it would be `true` on macOS by default, and then fail with: `error : V8 provisioning only supported on Linux, and windows.`
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
See Commits and Changes for more details.
Created by
pull[bot]
Can you help keep this open source service alive? 💖 Please sponsor : )