- 19 6月, 2022 4 次提交
-
-
由 Stephen Toub 提交于
-
由 Stephen Toub 提交于
-
由 Badre BSAILA 提交于
-
由 Bruce Forstall 提交于
The new `-jitoption` option passes the argument options to both baseline and diff compilers. This is a convenience option: there already is `-base_jit_option` and `-diff_jit_option` to specify passing options to either baseline or diff. The name of the option is the same as that used for `replay`.
-
- 18 6月, 2022 15 次提交
-
-
由 Stephen Toub 提交于
* Remove some dead code / branches Some signal amidst the noise in an lgtm.com report. * Address PR feedback
-
由 Lakshan Fernando 提交于
* enable lib tests that used to fail with GC issues * excluding linq parallel test since that doesn't build * Threading.Thread tests have issues * Excluding new test failures
-
由 Stephen Toub 提交于
* Use u8 in a few more places * A few more u8s
-
由 Aaron Robinson 提交于
* Remove enum_flag_Unrestored usage in boxing stubs. * Add AND instruction (21h) to x86 decoder. * Update mono for null ref in interpreter paths. * Disable test on llvmfullaot and wasm * Handle null destination for intrinsics.
-
由 dotnet-maestro[bot] 提交于
[main] Update dependencies from dotnet/runtime dotnet/icu dotnet/xharness dotnet/runtime-assets dotnet/emsdk dotnet/roslyn-analyzers (#70476) * Update dependencies from https://github.com/dotnet/runtime-assets build 20220608.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.22281.1 -> To Version 7.0.0-beta.22308.1 * Update dependencies from https://github.com/dotnet/emsdk build 20220608.2 Microsoft.NET.Workload.Emscripten.Manifest-7.0.100 From Version 7.0.0-preview.6.22281.1 -> To Version 7.0.0-preview.6.22308.2 * Update dependencies from https://github.com/dotnet/xharness build 20220610.1 Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit From Version 1.0.0-prerelease.22305.1 -> To Version 1.0.0-prerelease.22310.1 * Revert "Update dependencies from https://github.com/dotnet/emsdk build 20220608.2" This reverts commit bbb4e156. * Update dependencies from https://github.com/dotnet/icu build 20220609.1 Microsoft.NETCore.Runtime.ICU.Transport From Version 7.0.0-preview.6.22306.1 -> To Version 7.0.0-preview.6.22309.1 * Update dependencies from https://github.com/dotnet/emsdk build 20220608.2 Microsoft.NET.Workload.Emscripten.Manifest-7.0.100 From Version 7.0.0-preview.6.22281.1 -> To Version 7.0.0-preview.6.22308.2 * Update dependencies from https://github.com/dotnet/runtime-assets build 20220610.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.22281.1 -> To Version 7.0.0-beta.22310.1 * Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20220610.1 Microsoft.CodeAnalysis.NetAnalyzers From Version 7.0.0-preview1.22302.1 -> To Version 7.0.0-preview1.22310.1 * Update dependencies from https://github.com/dotnet/runtime build 20220612.5 Microsoft.NET.Sdk.IL , Microsoft.NETCore.App.Runtime.win-x64 , Microsoft.NETCore.DotNetHost , Microsoft.NETCore.DotNetHostPolicy , Microsoft.NETCore.ILAsm , runtime.native.System.IO.Ports , System.Text.Json From Version 7.0.0-preview.6.22305.4 -> To Version 7.0.0-preview.6.22312.5 * Update dependencies from https://github.com/dotnet/icu build 20220613.1 Microsoft.NETCore.Runtime.ICU.Transport From Version 7.0.0-preview.6.22306.1 -> To Version 7.0.0-preview.6.22313.1 * Update dependencies from https://github.com/dotnet/xharness build 20220613.1 Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit From Version 1.0.0-prerelease.22310.1 -> To Version 1.0.0-prerelease.22313.1 * Update dependencies from https://github.com/dotnet/runtime-assets build 20220613.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.22281.1 -> To Version 7.0.0-beta.22313.1 * Update dependencies from https://github.com/dotnet/emsdk build 20220613.1 Microsoft.NET.Workload.Emscripten.Manifest-7.0.100 From Version 7.0.0-preview.6.22281.1 -> To Version 7.0.0-preview.6.22313.1 * [wasm] Wasm.Build.Tests: Disable strict version checks for emcc Due to the way we have to update `dotnet/emsdk`, and get the update PRs in `runtime`, the emsdk version can be mismatched. For example, if `dotnet/emsdk` has already updated to `3.1.12`, but `dotnet/runtime` is still on `3.1.7`. This is an expected scenario while working on updating to a newer emscripten. The version mismatch will still show up, but as a warning now. * Update dependencies from https://github.com/dotnet/xharness build 20220614.1 Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit From Version 1.0.0-prerelease.22310.1 -> To Version 1.0.0-prerelease.22314.1 * [wasm] Wasm.Build.Tests: Update Skiasharp reference The skiasharp dependent tests fail with: `error : undefined symbol: _ZNKSt3__220__vector_base_commonILb1EE20__throw_length_errorEv`. Update the reference to the latest package which added a binary compiled for `3.1.7`. * [wasm] Workaround a test failure in WBT Currently, there is a mismatch between emsdk versions with the workload emscripten packs using `3.1.12`, and the runtime being built with `3.1.7`. And that is causing `Wasm.Build.Tests.NativeLibraryTests.ProjectUsingSkiaSharp` to fail with: ``` EXEC : error : undefined symbol: _ZNKSt3__220__vector_base_commonILb1EE20__throw_length_errorEv (referenced by top-level compiled C/C++ code) [/datadisks/disk1/work/B1420981/w/ACC90933/e/blz_nativeref_aot_Debug/blz_nativeref_aot_Debug.csproj] EXEC : warning : Link with `-sLLD_REPORT_UNDEFINED` to get more information on undefined symbols [/datadisks/disk1/work/B1420981/w/ACC90933/e/blz_nativeref_aot_Debug/blz_nativeref_aot_Debug.csproj] EXEC : warning : To disable errors for undefined symbols use `-sERROR_ON_UNDEFINED_SYMBOLS=0` [/datadisks/disk1/work/B1420981/w/ACC90933/e/blz_nativeref_aot_Debug/blz_nativeref_aot_Debug.csproj] EXEC : warning : __ZNKSt3__220__vector_base_commonILb1EE20__throw_length_errorEv may need to be added to EXPORTED_FUNCTIONS if it arrives from a system library [/datadisks/disk1/work/B1420981/w/ACC90933/e/blz_nativeref_aot_Debug/blz_nativeref_aot_Debug.csproj] EXEC : error : undefined symbol: _ZNKSt3__221__basic_string_commonILb1EE20__throw_length_errorEv (referenced by top-level compiled C/C++ code) [/datadisks/disk1/work/B1420981/w/ACC90933/e/blz_nativeref_aot_Debug/blz_nativeref_aot_Debug.csproj] EXEC : warning : __ZNKSt3__221__basic_string_commonILb1EE20__throw_length_errorEv may need to be added to EXPORTED_FUNCTIONS if it arrives from a system library [/datadisks/disk1/work/B1420981/w/ACC90933/e/blz_nativeref_aot_Debug/blz_nativeref_aot_Debug.csproj] EXEC : error : Aborting compilation due to previous errors [/datadisks/disk1/work/B1420981/w/ACC90933/e/blz_nativeref_aot_Debug/blz_nativeref_aot_Debug.csproj] emcc : error : '/datadisks/disk1/work/B1420981/w/ACC90933/e/dotnet-workload/packs/Microsoft.NET.Runtime.Emscripten.3.1.12.Node.linux-x64/7.0.0-preview.6.22313.1/tools/bin/node /datadisks/disk1/work/B1420981/w/ACC90933/e/dotnet-workload/packs/Microsoft.NET.Runtime.Emscripten.3.1.12.Sdk.linux-x64/7.0.0-preview.6.22313.1/tools/emscripten/src/compiler.js /datadisks/disk1/work/B1420981/t/tmp44tn7y2d.json' failed (returned 1) [/datadisks/disk1/work/B1420981/w/ACC90933/e/blz_nativeref_aot_Debug/blz_nativeref_aot_Debug.csproj] ``` This commit adds a temporary workaround to ignore the undefined symbols for this specific test. And this should be removed when runtime is updated to `3.1.12` . Co-authored-by: Ndotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com> Co-authored-by: NAlexander Köplinger <alex.koeplinger@outlook.com> Co-authored-by: NLarry Ewing <lewing@microsoft.com> Co-authored-by: NAnkit Jain <radical@gmail.com>
-
由 Aaron Robinson 提交于
The issue here was the recursion into PrettyPrintSigWorkerInternal that would reset the buffer. Now, we pass in a new buffer and append it when we return.
-
由 Stephen Toub 提交于
-
由 Jakob Botsch Nielsen 提交于
Add support for instrumenting delegate calls and vtable calls into method handle histograms. Use these histograms to do GDV for delegate calls and also support method-based GDV for vtable calls. For instrumentation we now support class probes at interface call sites, method probes at delegate call sites and both class probes and method probes at vtable call sites. For vtable calls, when turned on, instrumentation produces both histograms as PGO data so that the JIT can later make the choice about what is the best form of guard to use at that site. For guarding, there are some things to take into account. Delegate calls currently (practically) always point to precode, so this PR is just guarding on getFunctionFixedEntryPoint which returns the precode address, and this is generally quite cheap (same cost as class-based GDV). That's the case for delegates pointing to instance methods anyway, this PR does not support static methods yet -- those will be more expensive. For vtable calls the runtime will backpatch the slots when tiering, so the JIT guards the address retrieved from the vtable against an indirection of the slot, which is slightly more expensive than a class-based guard. Currently the instrumentation is enabled conditionally with COMPlus_JitDelegateProfiling=1 (for delegates) and COMPlus_JitVTableProfiling=1 (for vtable calls). Currently delegate profiling is turned on by default while vtable profiling is off by default.
-
由 Jan Kotas 提交于
* Rename ICMP interop to match Windows SDK names
-
由 Mikhail Kurinnoi 提交于
-
由 Aaron Robinson 提交于
* Remove #define Sleep
-
由 Carlos Sanchez 提交于
* Add PlatformDetection.SupportsHardLinkCreation property. * Fix how paths are combined/joined and sanitized on extraction, to ensure paths with redundant segments get properly handled. * Add tests that verify archives with entries whose paths start with .\, including the root folder itself. * Re-enable the hardlink test, condition it to not run if platform does not support extraction of hardlinks. * Remove unnecessary test - This same code is already being tested by TarReader_ExtractToFile_Tests.ExtractEntriesWithSlashDotPrefix * Reuse test code that retrieves memory stream. * Bump test data package version * Add missing typeof(PlatformDetection) in ConditionalFact Co-authored-by: Ncarlossanlop <carlossanlop@users.noreply.github.com>
-
由 Ankit Jain 提交于
* [wasm] Add support for per-project customization of helix work items Currently, for sending tests to helix: 1. the project binaries are zipped, as part of the project build 2. then separate helix targets files build that adds helix items for those zip files. - for wasm, we test with multiple 'scenarios' - like v8, browser, and nodejs. - so, 3 helix work items are submitted per zip file - If a test project needs to have any customizations, for example, for testing crypto with a managed implementation, and subtlecrypto, which would require: - passing different arguments to xharness, in case of managed, and subtlecrypto - and this should be done only for the browser case - Currently, this would need this would need to be done in `sendtohelix-wasm.targets` special casing for the test project, and scenario. - We add support for importing `$(ProjectName).helix.targets`, and calling a special target in that to add helix items, as needed. - This targets file can be set in the test project like: ```xml <HelixTargetsFile Condition="'$(TargetOS)' == 'Browser'">wasm.helix.targets</HelixTargetsFile> ``` - it will get deployed next to the zip file, and picked up automatically ```xml <Project> <PropertyGroup> <_CryptoProjectName>System.Security.Cryptography.Tests</_CryptoProjectName> <System_Security_Cryptography_Tests_TargetName Condition="'$(Scenario))' == 'WasmTestOnBrowser'">System_Security_Cryptography_Tests_Targ et</System_Security_Cryptography_Tests_TargetName> </PropertyGroup> <Target Name="System_Security_Cryptography_Tests_Target"> <ItemGroup> <HelixWorkItem Include="$(Scenario)-managed-$(_CryptoProjectName)"> <PayloadArchive>$(TestArchiveTestsDir)$(_CryptoProjectName).zip</PayloadArchive> <Command>$(HelixCommand)</Command> <Timeout>$(_workItemTimeout)</Timeout> </HelixWorkItem> <HelixWorkItem Include="$(Scenario)-subtlecrypto-System.Security.Cryptography.Tests"> <PayloadArchive>$(TestArchiveTestsDir)$(_CryptoProjectName).zip</PayloadArchive> <Command>$(HelixCommand)</Command> <Timeout>$(_workItemTimeout)</Timeout> <PreCommands Condition="'$(OS)' == 'Windows_NT'">set "WasmXHarnessArgs=--web-server-use-cors"</PreCommands> <PreCommands Condition="'$(OS)' != 'Windows_NT'">export "WasmXHarnessArgs=--web-server-use-cors"</PreCommands> </HelixWorkItem> </ItemGroup> </Target> ``` - The targets file *must* have these: - a property named like `System_Security_Cryptography_Tests_TargetName`, for a test project named `System.Security.Cryptography.Tests` - if this property is not set, then the default behavior of adding work items will run - The target should add any items it needs to to `@(HelixWorkItem)`. - Examples of adding these can be seen in `sendtohelix*` project files - Remember that all these properties, and targets get imported into the msbuild *global* namespace, so make sure to use unique names to avoid conflicts with other test projects. Future work: this commit only enables it for wasm/library tests, but it should be easy to extract it out, but needs some testing. * [wasm] Helix: test with, and without subtle crypto * disable non-wasm builds * address review feedback * Address review feedback * Fix typo * Revert "disable non-wasm builds" This reverts commit 7ef99e81f82200189dd3f61eeaf00d6ca4ced6d4. * Update src/libraries/System.Security.Cryptography/tests/wasm.helix.targets Co-authored-by: NEric Erhardt <eric.erhardt@microsoft.com> * Address review feedback * remove debug spew * Change the way helix extension targets are discovered. The new approach: To run a custom project specific target for adding/editing @(HelixWorkItem): - In the project add: `<HelixTargetsFile Condition="'$(TargetOS)' == 'Browser'">wasm.helix.targets</HelixTargetsFile>` - This file gets copied next to the test archive as $(MSBuildProjectName).helix.targets - In this `wasm.helix.targets` file, add to $(HelixExtensionTargets) to run your custom target ```xml <PropertyGroup Condition="'$(IsRunningLibraryTests)' == 'true' and '$(Scenario)' == 'WasmTestOnBrowser'"> <HelixExtensionTargets>$(HelixExtensionTargets);_AddHelixCrypoItems</HelixExtensionTargets> ``` - The extension target will be called after the default items are added to `@(HelixWorkItem)`. - Useful properties to condition on: $(Scenario), $(IsRunningLibraryTests) - And add to, change, or remove from @(HelixWorkItem) Example: ```xml <Target Name="_AddHelixCrypoItems"> <ItemGroup> <!-- remove the existing item --> <HelixWorkItem Remove="@(HelixWorkItem)" Condition="'%(OriginalFileName)' == '$(_CryptoProjectName)'" /> <!-- add two new ones - managed, and subtylecrypto --> <HelixWorkItem Include="$(WorkItemPrefix)managed-$(_CryptoProjectName)"> <PayloadArchive>$(TestArchiveTestsDir)$(_CryptoProjectName).zip</PayloadArchive> <Command>$(HelixCommand)</Command> <Timeout>$(_workItemTimeout)</Timeout> <OriginalFileName>$(_CryptoProjectName)</OriginalFileName> </HelixWorkItem> <HelixWorkItem Include="$(WorkItemPrefix)subtlecrypto-$(_CryptoProjectName)"> <PayloadArchive>$(TestArchiveTestsDir)$(_CryptoProjectName).zip</PayloadArchive> <Command>$(HelixCommand)</Command> <Timeout>$(_workItemTimeout)</Timeout> <OriginalFileName>$(_CryptoProjectName)</OriginalFileName> <PreCommands Condition="'$(OS)' == 'Windows_NT'">set "WasmXHarnessArgs=%WasmXHarnessArgs% --web-server-use-cop"</PreCommands> <PreCommands Condition="'$(OS)' != 'Windows_NT'">export "WasmXHarnessArgs=$WasmXHarnessArgs --web-server-use-cop"</PreCommands> </HelixWorkItem> <_CryptoHelixItem Include="@(HelixWorkItem)" Condition="$([System.String]::new('%(HelixWorkItem.Identity)').EndsWith('-$(_CryptoProjectName)'))" /> </ItemGroup> <Error Text="Something went wrong. Expected to have only two work items for $(_CryptoProjectName). But got @(_CryptoHelixItem)" Condition="@(_CryptoHelixItem->Count()) != 2" /> </Target> ``` * cleanup * Move WBT specific stuff into the target too. This will make it simpler to move it off into a targets file later * fix build * fix libtests * fix wbt * [wasm] Bump helix timeout to 90mins for debugger tests on windows Co-authored-by: NEric Erhardt <eric.erhardt@microsoft.com>
-
由 Eduardo Velarde 提交于
Event ThreadPoolMinMaxThreads added. Parameters are: ushort MinWorkerThreads ushort MaxWorkerThreads ushort MinIOCompletionThreads ushort MaxIOCompletionThreads ushort ClrInstanceID It is fired in the ThreadPool constructor and in the SetMinThreads/SetMaxThreads functions.
-
由 Katelyn Gadd 提交于
-
- 17 6月, 2022 21 次提交
-
-
由 Jan Kotas 提交于
-
由 Joni Aromaa 提交于
Contributes to #40553
-
由 Kevin Jones 提交于
Co-authored-by: NStephen Toub <stoub@microsoft.com>
-
由 Michal Strehovský 提交于
Microsoft.CSharp was hitting an issue due to a vararg constructor. We don't support varargs. They shouldn't make it into the dependency graph. We are already checking in many places. We were erroneously thinking a vararg constructor with no mandatory arguments is a default constructor. Runtime.InteropServices were crashing because we got a MulticastDelegate type into a codepath that expects a MulticastDelegate descendant.
-
由 Stephen Toub 提交于
* Enable IDE0020 (Use pattern matching) * Update src/libraries/System.Private.Xml/src/System/Xml/Serialization/XmlSerializationWriter.cs Co-authored-by: NBuyaa Namnan <buyankhishig.namnan@microsoft.com> * Update variable naming Co-authored-by: NBuyaa Namnan <buyankhishig.namnan@microsoft.com>
-
由 Michal Strehovský 提交于
Fixes #70815.
-
由 Michal Strehovský 提交于
There is a dataflow warning suppression in System.Linq.Expressions that assumes we'll always have an invocable method body for delegate Invoke method. We need one in IL. We don't in native code. Emulate what IL Linker does and generate a method body. This is a size regression. Suppression: https://github.com/dotnet/runtime/blob/3b2883b097a773715ca84056885e0ca1488da36e/src/libraries/System.Linq.Expressions/src/System/Dynamic/Utils/TypeUtils.cs#L906-L912 Fixes #70880.
-
由 Radek Zikmund 提交于
* Improve TLS1.3 detection in registry for QUIC * Split client and server detection * Code review feedback
-
由 Stephen Toub 提交于
* Use new byte[] span optimization in a few more places Separated out of larger change to use CreateSpan (these don't rely on that). * Address PR feedback
-
由 Stephen Toub 提交于
* Enable IDE0054 (Use compound assignment) * Update src/libraries/System.Data.Common/src/System/Data/Common/StringStorage.cs Co-authored-by: NTanner Gooding <tagoo@outlook.com> Co-authored-by: NTanner Gooding <tagoo@outlook.com>
-
由 SingleAccretion 提交于
* Assign proper VNs to shared CSE defs They must be those of the original expression, not the "base" constant CSE creates. * Add a test
-
由 Will Smith 提交于
-
由 Kevin Jones 提交于
-
由 Jan Kotas 提交于
InterlockedCompareExchangeT has to be called on a raw Object* to make the GC stress infrastructure happy.
-
由 Carlos Sanchez 提交于
-
由 Jan Kotas 提交于
This option has many issues. Anybody trying to experiment with static linking can add `<LinkerArg Include="-static" />` into the local file.
-
由 Theodore Tsirpanis 提交于
It is now available in all frameworks it targets.
-
由 Andy Ayers 提交于
For a given loop, we need to separate out the true backedge, any non-loop backedges, and any inner loop backedges so that they all target distinct blocks. Otherwise, we may violate assumptions that the loop entry dominates all blocks in the loop and that all backedges that reach top come from within the loop. This seems simplest to do with two rounds of canonicalization, one that moves the non-loop edges, and another that moves the true backedge. Fixes #70802.
-
由 Tanner Gooding 提交于
* Adding tests validating Positive NaN for Max, MaxMagnitude, Min, and MinMagnitude * Fixing the handling of Positive NaN in Math.Min for float/double * Fixing the Max/Min code comments to use greater and lesser * Adding a code comment clarifying the sign toggling behavior
-
由 Aleksey Kliger (λgeek) 提交于
the BLOCKING_SUSPEND_REQUESTED state is treated as suspend in full coop mode (the thread keeps running, but by definition it's not allowed to access managed resources and it will self-suspend if it tries to enter GC Unsafe mode by calling a runtime API or managed code). It is bad in hybrid suspend mode (the thread should be preemptively suspended, but we timed out before the signal handler had a chance to run). The corresponding suspension logic in the code is: https://github.com/dotnet/runtime/blob/3fc61ebb562afc327a8fc6de5c82d76e86bf6f5d/src/mono/mono/utils/mono-threads.c#L1149-L1158
-
由 SingleAccretion 提交于
* Catch (more) mismatched args in "fgMorphArgs" * Add a test
-