- 09 6月, 2022 13 次提交
-
-
由 Filip Navara 提交于
-
由 Huo Yaoyuan 提交于
* Guard FillVariant under FEATURE_COMINTEROP * Guard COM exception information under FEATURE_COMINTEROP * Remove TypeNameBuilder::ToString(BSTR) * Remove the whole EECOMException type when COM interop is disabled * Guard more ExceptionData usage under FEATURE_COMINTEROP * Guard BSTRHolder under FEATURE_COMINTEROP * Remove Unix BSTR simulation in palrt * Add guard to COMException::GetMessage
-
由 Stephen Toub 提交于
* Remove some unnecessary regex NonBacktracking code Move some debug-only code to #if DEBUG, remove other dead code, and clean up a few things that are unnecessary. Also add a few tests to fill out some code coverage results, and address some style-related comments from a recently merged PR. * Address PR feedback * Fix non-deterministic threading-related failures in regex tests If the wrong tests run concurrently, they can end up seeing a changed NFA safe limit from another test.
-
由 David Wrighton 提交于
* Increase precision and safety of the NonVersionableAttribute - NonVersionable now only unconditionally affects whether or not the IL is reported as inlined in the inlining data - Primitive types are now implicitly considered to be NonVersionable - Classes defined in CoreLib may now be considered to be NonVersionable - Classes now marked are String, RawData, and RawArrayData, which are all tied into intrinsics in crossgen2 - NFloat is now marked as NonVersionable so that some of its methods may actually be treated as NonVersionable - There is now an additional predicate that the IL within the NonVersionable method must satisfy a series of tests to ensure that it can safely be inlined without adding additional tokens for the logic to depend on. See below for the details of the predicate Collectively these changes make it so that even if we change our inlining rules, the NonVersionable marked methods will successfully pass through Crossgen, without generating requiring tokens from their original modules to be present in the final image. The rules are: // 1. ldfld, ldflda, and stfld to instance fields of NonVersionable structs and NonVersionable classes // 2. cpobj, initobj, ldobj, stobj, ldelem, ldelema or sizeof, to NonVersionable structures, signature variables, pointers, function pointers, byrefs, classes, or arrays // 3. stelem, to NonVersionable structures // In addition, the method must not have any EH. // The method may only have locals which are NonVersionable structures, or classes * Address code review feedback
-
由 Steve Pfister 提交于
This change adds two build-only lanes to `runtime` and two full build+test lanes to `runtime-wasm` that builds wasm with internal threads only (`WasmEnablePerfTracing`) and full threading (`WasmEnableThreads`). The `runtime-wasm` additions can only be manually triggered at this time. Co-authored-by: NAleksey Kliger (λgeek) <alklig@microsoft.com> Co-authored-by: NAnkit Jain <radical@gmail.com>
-
由 Kevin Jones 提交于
-
由 Aaron Robinson 提交于
* Convert incorrect assert for loading relative paths to native libraries * Reenable PMI running on InteropServices tests.
-
由 Jakob Botsch Nielsen 提交于
We can use type info from GT_RET_EXPR nodes when deciding whether we need to normalize on a return. Fix #70334 We could also consider typing these GT_RET_EXPR nodes with the actual type of the call, though I am unsure if we want to introduce more small-typed nodes.
-
由 Huo Yaoyuan 提交于
* Don't call RuntimeHelper.Equals in Object.Equals * Update src/libraries/System.Private.CoreLib/src/System/Object.cs Co-authored-by: NJan Kotas <jkotas@microsoft.com>
-
由 Jo Shields 提交于
Closes: #46461
-
由 SingleAccretion 提交于
* Delete a zero-diff quirk * Also update some comments Removing GT_INDEX/ADDR(IND) references.
-
由 Eric Erhardt 提交于
* Remove ActiveIssue on OSVersion_ValidVersion_OSX This test was fixed to work correctly on the latest macOS versions in https://github.com/dotnet/runtime/pull/64565. The test can now be re-enabled. Fix #49106 * Verify the Minor version as well, since it is no longer being verified by the RID.
-
由 kanadaj 提交于
* Mark IQueryable.DefaultIfEmpty() as nullable * Update CachedReflection.cs * Update the nullability in the reference source
-
- 08 6月, 2022 27 次提交
-
-
由 Tomas Weinfurt 提交于
* update dogfooding instruction for 7.0 * update example * Update docs/project/dogfooding.md Co-authored-by: NMartin Costello <martin@martincostello.com>
-
由 dotnet-maestro[bot] 提交于
* Update dependencies from https://github.com/dotnet/icu build 20220523.1 Microsoft.NETCore.Runtime.ICU.Transport From Version 7.0.0-preview.5.22269.3 -> To Version 7.0.0-preview.5.22273.1 * Update dependencies from https://github.com/dotnet/xharness build 20220524.1 Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit From Version 1.0.0-prerelease.22270.1 -> To Version 1.0.0-prerelease.22274.1 * Update dependencies from https://github.com/dotnet/runtime-assets build 20220523.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.22267.1 -> To Version 7.0.0-beta.22273.1 * Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20220524.2 Microsoft.CodeAnalysis.NetAnalyzers From Version 7.0.0-preview1.22252.2 -> To Version 7.0.0-preview1.22274.2 * Update dependencies from https://github.com/dotnet/msquic build 20220523.2 System.Net.MsQuic.Transport From Version 7.0.0-alpha.1.22273.1 -> To Version 7.0.0-alpha.1.22273.2 * Update dependencies from https://github.com/dotnet/icu build 20220525.2 Microsoft.NETCore.Runtime.ICU.Transport From Version 7.0.0-preview.5.22269.3 -> To Version 7.0.0-preview.6.22275.2 * Update dependencies from https://github.com/dotnet/emsdk build 20220525.2 Microsoft.NET.Workload.Emscripten.Manifest-7.0.100 From Version 7.0.0-preview.5.22268.1 -> To Version 7.0.0-preview.6.22275.2 * Update dependencies from https://github.com/dotnet/xharness build 20220526.1 Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit From Version 1.0.0-prerelease.22270.1 -> To Version 1.0.0-prerelease.22276.1 * Update dependencies from https://github.com/dotnet/emsdk build 20220525.3 Microsoft.NET.Workload.Emscripten.Manifest-7.0.100 From Version 7.0.0-preview.5.22268.1 -> To Version 7.0.0-preview.6.22275.3 * Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20220527.2 Microsoft.CodeAnalysis.NetAnalyzers From Version 7.0.0-preview1.22252.2 -> To Version 7.0.0-preview1.22277.2 * Update dependencies from https://dev.azure.com/dnceng/internal/_git/dotnet-optimization build 20220529.1 optimization.linux-x64.MIBC.Runtime , optimization.windows_nt-x64.MIBC.Runtime , optimization.windows_nt-x86.MIBC.Runtime , optimization.PGO.CoreCLR From Version 1.0.0-prerelease.22217.3 -> To Version 1.0.0-prerelease.22279.1 * Update dependencies from https://github.com/dotnet/runtime build 20220529.1 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.5.22272.3 -> To Version 7.0.0-preview.6.22279.1 * Update dependencies from https://github.com/dotnet/icu build 20220530.1 Microsoft.NETCore.Runtime.ICU.Transport From Version 7.0.0-preview.5.22269.3 -> To Version 7.0.0-preview.6.22280.1 * Update dependencies from https://github.com/dotnet/icu build 20220530.2 Microsoft.NETCore.Runtime.ICU.Transport From Version 7.0.0-preview.5.22269.3 -> To Version 7.0.0-preview.6.22280.2 * Update dependencies from https://github.com/dotnet/xharness build 20220530.1 Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit From Version 1.0.0-prerelease.22270.1 -> To Version 1.0.0-prerelease.22280.1 * Add manual marshalling for non-blittable delegates defined in System.Drawing.Common (which has the DisableRuntimeMarshallingAttribute applied) passed to P/Invokes. * Update dependencies from https://github.com/dotnet/xharness build 20220601.1 Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit From Version 1.0.0-prerelease.22270.1 -> To Version 1.0.0-prerelease.22301.1 * Update dependencies from https://github.com/dotnet/runtime-assets build 20220531.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.22267.1 -> To Version 7.0.0-beta.22281.1 * Update dependencies from https://github.com/dotnet/emsdk build 20220531.1 Microsoft.NET.Workload.Emscripten.Manifest-7.0.100 From Version 7.0.0-preview.5.22268.1 -> To Version 7.0.0-preview.6.22281.1 * Update dependencies from https://github.com/dotnet/msquic build 20220531.1 System.Net.MsQuic.Transport From Version 7.0.0-alpha.1.22273.1 -> To Version 7.0.0-alpha.1.22281.1 * Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20220601.1 Microsoft.CodeAnalysis.NetAnalyzers From Version 7.0.0-preview1.22252.2 -> To Version 7.0.0-preview1.22301.1 * Update dependencies from https://github.com/dotnet/msquic build 20220601.1 System.Net.MsQuic.Transport From Version 7.0.0-alpha.1.22273.1 -> To Version 7.0.0-alpha.1.22301.1 * Move OleDB to use more manual marshalling instead of delegate marshalling. * Update dependencies from https://github.com/dotnet/roslyn-analyzers build 20220602.1 Microsoft.CodeAnalysis.NetAnalyzers From Version 7.0.0-preview1.22252.2 -> To Version 7.0.0-preview1.22302.1 * Update dependencies from https://github.com/dotnet/runtime build 20220605.4 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.5.22272.3 -> To Version 7.0.0-preview.6.22305.4 * Update dependencies from https://github.com/dotnet/xharness build 20220605.1 Microsoft.DotNet.XHarness.CLI , Microsoft.DotNet.XHarness.TestRunners.Common , Microsoft.DotNet.XHarness.TestRunners.Xunit From Version 1.0.0-prerelease.22270.1 -> To Version 1.0.0-prerelease.22305.1 * Update dependencies from https://github.com/dotnet/icu build 20220606.1 Microsoft.NETCore.Runtime.ICU.Transport From Version 7.0.0-preview.5.22269.3 -> To Version 7.0.0-preview.6.22306.1 Co-authored-by: Ndotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com> Co-authored-by: NLarry Ewing <lewing@microsoft.com> Co-authored-by: NJeremy Koritzinsky <jekoritz@microsoft.com>
-
由 Jakob Botsch Nielsen 提交于
We no longer need to interop with JIT64 so clean up this TODO. We are in fact already relying on the normalization done by the callee since we allow tailcalling that skips the inserted normalization in R2R.
-
由 Tomas Weinfurt 提交于
* initial drop * cleanup
-
由 Ilona Tomkowicz 提交于
* Basic testcase. * Fixed non-null access to proxy-hidden members. * Fixing the issue and adding more tests. * Fixed a failing test: let CompileAndRunTheExpression throw. * Blocked failing tests on firefox. * Applied @radical's suggestions. * Reverted indexing to fix tests. * Reverted LastOrDefault instead of indexing + corrected names. * Changed to throw when root name empty. * Removing null suppression that does not change the evaluation result but fails without this change. * Applied @radical's comments. * Change exception on string property evaluation. * Added @radical's suggestions. Co-authored-by: NAnkit Jain <radical@gmail.com>
-
由 SRV 提交于
* Added impl of Equals/GetHashCode for UnixDomainSocketEP * Fixed typo * Fixed missing underscore * Clarify new fields using comments * Review feedback * Review feedback * Added platform verification * Fixed sporadic test failure due to hashcode collision
-
由 Dan Moseley 提交于
* Disable 2 osx fsw tests * Use ConditionalTheory Co-authored-by: NJozkee <dacantu@microsoft.com>
-
由 Andy Ayers 提交于
Such as those added by GDV. The JIT will now clone just for type tests, or just for array bounds, or for a mixture of the two. The JIT will still produce just one fast and one slow loop. If there are a mixture of array bounds and type test conditions, all conditions must pass for control to reach the fast loop. Unlike array bounds checks, type test failures are not intrinsically rare, so there is some profitability screening to ensure that a failed type test does not force execution to run the slow version "too often". The type test must execute frequently within the loop, and be heavily biased towards success. This is work towards resolving #65206.
-
由 Thays Grazia 提交于
* [wasm] [debugger] Adding serilog dlls Adding serilog dlls * Removing serilog usage for Blazor.
-
由 Andy Ayers 提交于
By default the JIT will dump blocks in bbNext order. This adds other ordering options, specified by `JitDumpFgBlockOrder`: * `0 (default) bbNext` * `1 bbNum` * `2 bbID` `bbID` in particular is useful when comparing JIT dumps where blocks have been reordered but the blocks themselves have similar content.
-
由 Stephen Toub 提交于
Rather than excluding all anchors, only exclude beginning anchors.
-
由 Dan Moseley 提交于
-
由 Jan Vorlicek 提交于
The workaround is no longer needed as the underlying issue in glibc was fixed in glibc 2.24 and the minimum glibc we now support is 2.27.
-
由 Andy Ayers 提交于
We may be able to prune the backedge of a middle-entry loop (one where `lpEntry != lpTop`). Extend `optUpdateLoopsBeforeRemoveBlock` to handle this case. Fixes #69938.
-
https://github.com/dotnet/hotreload-utils由 dotnet-maestro[bot] 提交于
Microsoft.DotNet.HotReload.Utils.Generator.BuildTool From Version 1.1.0-alpha.0.22281.2 -> To Version 1.1.0-alpha.0.22306.2 Co-authored-by: Ndotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
-
由 Ankit Jain 提交于
* [wasm] Workaround a python bug which can cause em* scripts to hang Issue - https://github.com/emscripten-core/emscripten/pull/15146 Emscripten added a workaround enabled by setting the environment variable - `EM_WORKAROUND_PYTHON_BUG_34780`. * [wasm] Wasm.Build.Tests - use a local copy of `dotnet` .. to avoid conflicting with other instances on helix. * don't log output from robocopy
-
由 Wraith 提交于
* resolve merge conflict * add checks for post-call jmp removal * use emitIsLastInsCall() to preclude call,jmp pairs and simplfy emitRemoveJumpToNextInst check for aligned instruction groups and skip them to preserve alignment linearize emitRemoveJumpToNextInst, add safety asserts for ordering and comment the requirement, add debug output explaining decisions * address feedback * change instruction omit to use code size zero * address feedback * add assertion info dump * address feedback * address feedback * remove end loop cleanup. cleanup jitdump messages and add early out flag. * address feedback, formatting * update variable naming and clarify comments * more feedback * add last instruction check and group flag set in emitSavIG * more feedback * fix jitdump output and make removal candidate printing optional * remove emitDispJumpList parameter * change overall size calculation and allow 0 size align to be printed in dumps * fix invorrect jmp check, remove inline for emitInstHasNoCode * allow alignment printing even when zero * remove debug printf and fix x86 * address feedback
-
由 Jan Kotas 提交于
-
由 Vitek Karas 提交于
This brings in relatively recent version of the shared code from the dotnet/linker repo. Main changes: * ValueNode -> SingleValue - and the partial classes implementation for the values * Adapt MethodBodyScanner to the SingleValue/MultiValue * Includes some fixes around array handling and unknown values * Removal of ReflectionPatternContext * Partially replaced by DiagnosticContext * Partially removed (the checks that everything reports something are nto needed anymore) * Use HandleCallAction and RequireDynamicallyAccessedMembersAction - this replaces most of the functionality in ReflectionMethodBodyScanner. Formatting: The files which are shared exactly from linker are kept as is (so tabs and so on) The files which are AOT specific should follow the formatting of AOT projects Testing: Passes smoke tests and some additional validation done via linker tests which is not part of this change Note: This is not up-to-date with linker but it's getting us much closer. Known "TODOs": * CompilerGeneratedState - linker has a much newer and much more capable version. Port of that will come later (as it was in heavy development while I was doing this port, and it's not strictly necessary for current functionality) * Type hierarchy marking - this needs work on the linker side as it's not yet part of the shared codebase * Correctly handle RUC/RDC for all "reflection accesses" to methods - some of the change improve on this, but it's nowhere near where it needs to be. Future work item.
-
由 Michal Strehovský 提交于
I was hitting a lot of obscure failures in #70201 that look like this: ``` [FAIL] System.Tests.Int128Tests.Parse_Span_Valid(value: "170141183460469231731687303715884105727", offset: 0, count: 1, style: Integer, provider: null, expected: 1) System.ArgumentException : Object of type 'System.Int32' cannot be converted to type 'System.Int128'. at System.InvokeUtils.CheckArgument(Object, EETypePtr, InvokeUtils.CheckArgumentSemantics, BinderBundle, InvokeUti ls.ArgSetupState&) + 0x1c0 at System.InvokeUtils.DynamicInvokeParamHelperCore(InvokeUtils.ArgSetupState&, RuntimeTypeHandle, InvokeUtils.Dyna micInvokeParamLookupType&, Int32&, InvokeUtils.DynamicInvokeParamType) + 0x228 at System.InvokeUtils.DynamicInvokeParamHelperIn(InvokeUtils.ArgSetupState&, RuntimeTypeHandle) + 0x1b at System.Runtime.Tests!<BaseAddress>+0xffe015 at System.InvokeUtils.CallDynamicInvokeMethod(Object, IntPtr, IntPtr, IntPtr, Object, Object[], BinderBundle, Bool ean, Boolean) + 0x14d at Internal.Runtime.Augments.RuntimeAugments.CallDynamicInvokeMethod(Object, IntPtr, IntPtr, IntPtr, Object, Objec t[], BinderBundle, Boolean, Boolean) + 0x3e at Internal.Reflection.Execution.MethodInvokers.StaticMethodInvoker.Invoke(Object, Object[], BinderBundle, Boolean ) + 0x4e at Internal.Reflection.Core.Execution.MethodInvoker.Invoke(Object, Object[], Binder, BindingFlags, CultureInfo) + 0x45 at System.Reflection.Runtime.MethodInfos.RuntimeMethodInfo.Invoke(Object, BindingFlags, Binder, Object[], CultureI nfo) + 0x58 ``` This stack is showing a reflection invoke attempt by xunit (not by a test, but by xunit itself) to invoke a method taking Int128, but passing a boxed Int32 as an argument. The TestData is indeed doing that. I was getting myself ready to debug xunit but I thought that maybe xunit has a custom binder that calls the operator methods using reflection to do the conversions. Sure enough the RD.XML fixed it, so the problem was with operators getting trimmed away.
-
由 Michal Strehovský 提交于
This was apparently fixed in 2016 on CoreCLR but no tests were added. The generic math tests are the first things that exercise this. Doesn't fail in the CI because this helper is likely not needed on ARM64 and we only test libs with NativeAOT on ARM64. Thought this was because of my local changes (because the CI was clean) but wasn't. Spent more time on this than I would be willing to admit.
-
由 dotnet-maestro[bot] 提交于
* Update dependencies from https://github.com/dotnet/linker build 20220523.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22270.1 -> To Version 7.0.100-1.22273.1 * Update dependencies from https://github.com/dotnet/linker build 20220524.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22270.1 -> To Version 7.0.100-1.22274.1 * Update dependencies from https://github.com/dotnet/linker build 20220525.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22270.1 -> To Version 7.0.100-1.22275.1 * Update dependencies from https://github.com/dotnet/linker build 20220530.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22270.1 -> To Version 7.0.100-1.22280.1 * Update dependencies from https://github.com/dotnet/linker build 20220531.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22270.1 -> To Version 7.0.100-1.22281.1 * Update dependencies from https://github.com/dotnet/linker build 20220601.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22270.1 -> To Version 7.0.100-1.22301.1 * Update dependencies from https://github.com/dotnet/linker build 20220603.2 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22270.1 -> To Version 7.0.100-1.22303.2 * Update dependencies from https://github.com/dotnet/linker build 20220606.1 Microsoft.NET.ILLink.Tasks From Version 7.0.100-1.22281.1 -> To Version 7.0.100-1.22306.1 Co-authored-by: Ndotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com> Co-authored-by: NVitek Karas <10670590+vitek-karas@users.noreply.github.com>
-
由 Eric Erhardt 提交于
When sending a message between LibraryChannel and ChannelWorker, there is a race condition where both threads are reading/writing to shared memory at the same time. This can cause message pages to be skipped. To fix this, add a shared mutex lock so only one side is reading/writing to shared memory at the same time. Fix #69806
-
由 Aman Khalid 提交于
Fake-splitting currently breaks stack walks by not generating unwind info for cold code. This commit implements unwind info on x86/64 when fake-splitting by generating unwind info for the combined hot/cold section just once, rather than generating unwind info for the separate sections. For reasons to be investigated, this implementation does not work when the code sections are separated by an arbitrary buffer (such as the 4KB buffer previously used). Thus, the buffer has been removed from the fake-splitting implementation: Now, the hot and cold sections are placed contiguously in memory, but the JIT continues to behave as if they are arbitrarily far away (for example, by using long branches between sections). Following this fix, fake-splitting no longer requires the GC to be suppressed by setting `COMPlus_GCgen0size=1000000`. A test job has been added to `runtime-jit-experimental` to ensure fake/stress-splitting does not regress.
-
由 Stephen Toub 提交于
* Use u8 in more places Primarily replacing Encoding.UTF8/ASCII.GetBytes("literal") with "literal"u8.ToArray() * Address PR feedback (and fix some vars)
-
由 Jeremy Koritzinsky 提交于
-
由 Michal Strehovský 提交于
The reflection patterns couldn't be statically analyzed. Needed to unblock #70201. NativeAOT trims by default and CoreLib is marked trimmable.
-