-
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
Merge upstream #2
Commits on Nov 2, 2021
-
Add Maui iOS and MacCatalyst build steps (#61068)
* Fix artifact match string. * Completed first attempt for a complete Maui SOD run. Added ios_scenarios tests, setup file copies, uploads, and downloads; and setup perf branch to use as partner testing branch. * Reset performance-setup.ps1 file to use main perf branch. * Reenable yml jobs disabled for testing.
Configuration menu - View commit details
-
Copy full SHA for 06c2dba - Browse repository at this point
Copy the full SHA 06c2dbaView commit details -
disable sending NT Authority in TLS handshake if specific trust was s…
…pecified (#60988) * diable sending NT Authority if specific trust was specified * feedback from review * add missing file * Apply suggestions from code review Co-authored-by: Cory Nelson <phrosty@gmail.com> * one more style update Co-authored-by: Cory Nelson <phrosty@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 7160079 - Browse repository at this point
Copy the full SHA 7160079View commit details -
Seed the unified System.Security.Cryptography.dll
* All of System.Security.Cryptography.Primitives has been moved * AsymmericKeyExchangeFormatter moved from S.S.C.Algorithms * This just starts the process to keep the infrastructure pieces separate from code layout pieces.
Configuration menu - View commit details
-
Copy full SHA for df5b118 - Browse repository at this point
Copy the full SHA df5b118View commit details -
[main] Update dependencies from 6 repositories (#61033)
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 10eb1a9 - Browse repository at this point
Copy the full SHA 10eb1a9View commit details -
Configuration menu - View commit details
-
Copy full SHA for b3c8fe8 - Browse repository at this point
Copy the full SHA b3c8fe8View commit details -
Configuration menu - View commit details
-
Copy full SHA for c690d27 - Browse repository at this point
Copy the full SHA c690d27View commit details -
* Remove "block" from VNApplySelectorsAssign It was unused and all the callers passed the current block anyway. Also some renaming to make Assign and AssignTypeCoerce methods consistent. * Improve the readability of VNForMapStore By naming parameters properly. * Improve the readability of VNForMapSelect By naming parameters properly. * Pull ASG numbering out of fgValueNumberTree In my upcoming substantive changes to this code the unreasonable level of nesting started to significantly degrade the readability of code. So, move it out of the main numbering function. The result is still pretty huge and could be split up further, but this will do for now. * Refactor VNApplySelectors Make it use a loop instead of recursion. Rename parameters to match the "Assign" variants. Add standard header comments.
Configuration menu - View commit details
-
Copy full SHA for 4e7cf80 - Browse repository at this point
Copy the full SHA 4e7cf80View commit details -
Bring up full library test CI runs on iOS / tvOS devices (#59503)
This change enables device runs on CI by building each test app on the helix instance it was deployed to. In past attempts, we looked at enhancing what takes place on the build machine via build tricks, compressing / cleaning up files early, etc and we could not overcome the need for excessively long timeouts and far more disk space. The change also adopts the patterns established in the wasm test build, giving us the opportunity to support different scenario runs as well as workloads testing in the future.
Configuration menu - View commit details
-
Copy full SHA for 8c6aeea - Browse repository at this point
Copy the full SHA 8c6aeeaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5ddf662 - Browse repository at this point
Copy the full SHA 5ddf662View commit details -
Configuration menu - View commit details
-
Copy full SHA for daf28a1 - Browse repository at this point
Copy the full SHA daf28a1View commit details -
Avoid bogus cred scanning hits (#61070)
* Remove quasi passwords * oops
Configuration menu - View commit details
-
Copy full SHA for 594f32e - Browse repository at this point
Copy the full SHA 594f32eView commit details -
Fix gcc warnings during mono linux-x64 build (#60675)
* Fix gcc warnings during mono linux-x64 build main with Debug configuration: 822 warnings - http://sprunge.us/2GzrDE PR with Debug configuration: 3 warnings related to deprecated sys/sysctl.h includes - http://sprunge.us/JuyA3K after fixing Debug warnings, there were 13 additional warnings in Release configuration: http://sprunge.us/PJCivP PR with Release configuration: (same) 3 warnings - http://sprunge.us/NwKHNE * Address CR feedback
Configuration menu - View commit details
-
Copy full SHA for 577a70a - Browse repository at this point
Copy the full SHA 577a70aView commit details -
HTTP2 loopback server WaitForCancellationAsync should validate error …
…code sent (#59313) HTTP2 loopback server WaitForCancellationAsync should validate error code sent
Configuration menu - View commit details
-
Copy full SHA for 176e393 - Browse repository at this point
Copy the full SHA 176e393View commit details -
Throwing
FormatException
when a required property from `Microsoft.E……xtensions.DependencyModel` is empy (#60842) * Setting framework name as nullable. * Setting path to nullable. * Setting runtime to nullable. * Setting path to nullable. * Setting Target Name, RuntimeTargetEntrySub Path and TargetLibrary Name as nullable (string) properties. * Adding missing line of code. * Adding new string resource and throwing argument exception on null/empty values. Adding unit tests to check for specific null/empty value cases * Removing Argument from string resource. Updating PR according to comments * Updating unit tests to use FormatException * Rollback of ArgumentExceptions in DependencyModels * Added missing usings * Updating all exceptions to FormatException * Moving FormatException while reading target name * Updating PR with new comments. * Update src/libraries/Microsoft.Extensions.DependencyModel/src/DependencyContextJsonReader.cs
Configuration menu - View commit details
-
Copy full SHA for a3f31e9 - Browse repository at this point
Copy the full SHA a3f31e9View commit details -
Removed two unused packages from .vsconfig (#60798)
These packages are unused as described in #60794 Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 5c8ea45 - Browse repository at this point
Copy the full SHA 5c8ea45View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0691c75 - Browse repository at this point
Copy the full SHA 0691c75View commit details -
[wasm] Re-enable source generator tests failing due to OOM (#60701)
This adds support for setting per-project optimization flags, and sets them for these projects so they don't OOM. Microsoft.Extensions.Logging.Generators.Roslyn3.11.Tests Microsoft.Extensions.Logging.Generators.Roslyn4.0.Tests System.Text.Json.SourceGeneration.Roslyn3.11.Unit.Tests System.Text.Json.SourceGeneration.Roslyn4.0.Unit.Tests System.Text.RegularExpressions.Generators.Tests Some individual ones are disabled due to #58226, and #60899 . Additionally, if a AOT build fails, then on linux it dumps the last few lines from dmesg, to help identify it was an oom-kill. Fixes #51961 . Co-authored-by: Larry Ewing <lewing@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 5a078b5 - Browse repository at this point
Copy the full SHA 5a078b5View commit details -
Disable couple of randomly failing PerformanceCounter tests (#61101)
* Disable couple of randomly failing PerformanceCounter tests * fix: disabled the wrong test
Configuration menu - View commit details
-
Copy full SHA for 02b9e72 - Browse repository at this point
Copy the full SHA 02b9e72View commit details -
Configuration menu - View commit details
-
Copy full SHA for e815a97 - Browse repository at this point
Copy the full SHA e815a97View commit details -
Fix: Incorrect order of checks for TypeBuilder
GetConstructor
and `……GetField` method (#53645) * Reorder checks for TypeBuilder.GetConstructor() * Reorder checks for TypeBuilder.GetField() * Adjust unit test to reordered TypeBuilder checks * Use 'not' keyword for pattern matching * Apply the same Type checks for Mono GetConstructor and GetField had the same incorrect checks order comparing to GetMethod as in the CoreCLR. To keep the consistent solution, Mono has also been adjusted. * Check whether a declaring type isn't type's generic definition * Make generic type if contains generic parameters * Suppres UnrecognizedReflectionPattern for GetField and GetConstructor * Move GetMethodType validation method at original order * Test GetConstructor against throwing an exception * Fix: copy-paste error 'type' -> 'constructor' * Align Mono and CoreCLR with nameof for GetConstructor * Use type for argument exception and test against type parameter * Get tests passing on both coreclr and mono. Ensure checks are consistent across GetConstructor, GetField, and GetMethod for both coreclr and mono. * Fix mono exception messages to use SR resources. Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for f981785 - Browse repository at this point
Copy the full SHA f981785View commit details -
Configuration menu - View commit details
-
Copy full SHA for ec12194 - Browse repository at this point
Copy the full SHA ec12194View commit details -
Configuration menu - View commit details
-
Copy full SHA for c87e932 - Browse repository at this point
Copy the full SHA c87e932View commit details -
Make QCalls respect the EntryPoint property (#60992)
Co-authored-by: Elinor Fung <elfung@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 24e7a4a - Browse repository at this point
Copy the full SHA 24e7a4aView commit details
Commits on Nov 3, 2021
-
Fix refcount when a composite r2r image is loaded from a bundle (#61066)
* Fix refcount when a composite r2r image is loaded from a bundle * PR feedback - better comments.
Configuration menu - View commit details
-
Copy full SHA for 12222d4 - Browse repository at this point
Copy the full SHA 12222d4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 49807bc - Browse repository at this point
Copy the full SHA 49807bcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 62148b6 - Browse repository at this point
Copy the full SHA 62148b6View commit details -
Add TFM and version support query to marshaller interface. (#61064)
* Add TFM and version support query to marshaller interface. * If any marshaller fails to support the current tfm version, fallback to using the built-in DllImport attribute. * Add tests for fallback generation on downlevel or generation if marshallers are supported on the target framework. * Convert CreateCompilationWithReferenceAssemblies to CreateCompilation overload. Co-authored-by: Elinor Fung <elfung@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 6527f54 - Browse repository at this point
Copy the full SHA 6527f54View commit details -
[wasm] simplify startup configuration (#61072)
* added configSrc - path to MonoConfig json file * added Module.onConfigLoaded callback * added Module.onDotNetReady replacing MonoConfig.loaded_cb * removed loaded_cb, assembly_list, runtime_assets, runtime_asset_sources from MonoConfig * simplified all sample and test projects * renamed no_global_exports to disableDotNet6Compatibility * implement default Module.preInit and Module.onRuntimeInitialized which could be overriden by user code (like Blazor) * re-enable the interp lane
Configuration menu - View commit details
-
Copy full SHA for 3950381 - Browse repository at this point
Copy the full SHA 3950381View commit details -
Skip sys/sysctl.h on linux in mono (#61110)
Fixes three warnings: ```sh [ 56%] Building C object mono/mini/CMakeFiles/monosgen-objects.dir/__/utils/mono-mmap.c.o In file included from /runtime/src/mono/mono/utils/mono-mmap.c:23: /usr/include/x86_64-linux-gnu/sys/sysctl.h:21:2: warning: #warning "The <sys/sysctl.h> header is deprecated and will be removed." [-Wcpp] 21 | #warning "The <sys/sysctl.h> header is deprecated and will be removed." | ^~~~~~~ # snip [ 59%] Building C object mono/mini/CMakeFiles/monosgen-objects.dir/__/utils/mono-time.c.o In file included from /runtime/src/mono/mono/utils/mono-proclib.c:42: /usr/include/x86_64-linux-gnu/sys/sysctl.h:21:2: warning: #warning "The <sys/sysctl.h> header is deprecated and will be removed." [-Wcpp] 21 | #warning "The <sys/sysctl.h> header is deprecated and will be removed." | ^~~~~~~ [ 59%] Building C object mono/mini/CMakeFiles/monosgen-objects.dir/__/utils/mono-uri.c.o [ 59%] Building C object mono/mini/CMakeFiles/monosgen-objects.dir/__/utils/mono-poll.c.o In file included from /runtime/src/mono/mono/utils/mono-time.c:107: /usr/include/x86_64-linux-gnu/sys/sysctl.h:21:2: warning: #warning "The <sys/sysctl.h> header is deprecated and will be removed." [-Wcpp] 21 | #warning "The <sys/sysctl.h> header is deprecated and will be removed." | ^~~~~~~ ``` With this PR: 0 warnings - http://sprunge.us/96kyq9 Like in src/libraries/Native, skip linux from sys/sysctl.h check. For other systems, `check_include_files` (instead of `check_include_file` (singular)) when a header depends on another one. Also, simplified few conditions: "is linux" check supersedes "is android".
Configuration menu - View commit details
-
Copy full SHA for 6aaee16 - Browse repository at this point
Copy the full SHA 6aaee16View commit details -
Allow nfloat to be in the ObjCRuntime namespace, and make it work for…
… Xamarin.MacCatalyst.dll as well. (#60854) Ref: xamarin/xamarin-macios#13092 Ref: mono/mono#21261
Configuration menu - View commit details
-
Copy full SHA for 1486f66 - Browse repository at this point
Copy the full SHA 1486f66View commit details -
[wasm][debugger]Add hidden attribute support (#61143)
* Draft of hidden attribute decorator use. * Removed checking custom attributes in the runtime each time the breakpoint is set and moved it to the constructor which is more efficient. * Added test for DebuggerHidden decorator. * By adding a line: using System.Diagnostics; IntAdd method moved down one line what resulted in CreateGoodBreakpoint tests failures. All row numbers in these tests had to be incremented. * Reverted edition of tests not connected with HiddenAttribute. * Added visible method to the HiddenAttribute test. * Applying thaystg review suggestion.
Configuration menu - View commit details
-
Copy full SHA for 39f3470 - Browse repository at this point
Copy the full SHA 39f3470View commit details -
* fix HttpClientHandlerTest.RemoteServer.cs * fix HttpClientHandlerTest.Authentication.cs * fix HttpClientHandlerTest.cs
Jan Jahoda authoredNov 3, 2021 Configuration menu - View commit details
-
Copy full SHA for 65c9433 - Browse repository at this point
Copy the full SHA 65c9433View commit details -
Fix invalid optimization of (-1 * -A) + A (#61091)
We were hitting both transforms in this block, but the first transform changes the node from GT_ADD to GT_SUB, while the second transform is valid only for GT_ADD. It is difficult to have natural code that hits both of these transforms, so I have just made them mutually exclusive instead of rechecking the oper in the second one. No SPMI diffs. Fix #61077
Configuration menu - View commit details
-
Copy full SHA for c23bc3b - Browse repository at this point
Copy the full SHA c23bc3bView commit details -
Configuration menu - View commit details
-
Copy full SHA for ab56392 - Browse repository at this point
Copy the full SHA ab56392View commit details -
Configuration menu - View commit details
-
Copy full SHA for 932e3bd - Browse repository at this point
Copy the full SHA 932e3bdView commit details -
Remove _validator field from ObjectCollection (#59589)
* Remove _validator field from ObjectCollection * Use more specific types for fields and args
Configuration menu - View commit details
-
Copy full SHA for ed7cc17 - Browse repository at this point
Copy the full SHA ed7cc17View commit details -
Update SDK to 6.0 RC2 (#60256)
Co-authored-by: Rainer Sigwald <raines@microsoft.com> Co-authored-by: Jeremy Koritzinsky <jekoritz@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 0113832 - Browse repository at this point
Copy the full SHA 0113832View commit details -
JIT: limited version of forward substitution for some relops (#61023)
Add a new optimization to redundant branch opts that looks at prior statements in the same block for redundant relop trees. If one is found, we check to see if it can be forward-substituted down to the terminal jump tree. And if it can we duplicate the computation down at the jump. This removes many of the cases we see in our generated code where we materialize a boolean value in a register and then immediately test that register to see if it is true/false, and then use that second test to drive branching -- instead we now use the initial test logic to drive the jump and so the boolean value only exists in the flags.
Configuration menu - View commit details
-
Copy full SHA for 7308c4f - Browse repository at this point
Copy the full SHA 7308c4fView commit details -
Make System.Security.Cryptography.X509Certificates compliant with int…
…erop guidelines - part 2 Convert more of S.S.C.X509Certificates to use correct interop style.
Configuration menu - View commit details
-
Copy full SHA for f7be57f - Browse repository at this point
Copy the full SHA f7be57fView commit details -
lock protect nullability cache of symbolic regex node (#60942)
* fixed nullability checking to be threadsafe * use volatile write for nullability cache Co-authored-by: Stephen Toub <stoub@microsoft.com> * made read of nullability cache volatile and fixed other PR comments * made non-lock-protected reads from SymbolicRegexBuilder._delta volatile * Apply suggestions from code review Co-authored-by: Stephen Toub <stoub@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 1e48eca - Browse repository at this point
Copy the full SHA 1e48ecaView commit details
Commits on Nov 4, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 22f0683 - Browse repository at this point
Copy the full SHA 22f0683View commit details -
Configuration menu - View commit details
-
Copy full SHA for bfc5ebc - Browse repository at this point
Copy the full SHA bfc5ebcView commit details -
Set IL offsets for calls created during devirtualization (#61189)
Since inlined statements use the IL location of the inliner's statement all statements created while inlining devirtualized calls would get no debug info before, while normally these will have IL location pointing to the call statement in the root.
Configuration menu - View commit details
-
Copy full SHA for cebe877 - Browse repository at this point
Copy the full SHA cebe877View commit details -
Fix Assertion failed 'ins == INS_add' for madd/msub (#61171)
Co-authored-by: SingleAccretion <62474226+SingleAccretion@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 1902063 - Browse repository at this point
Copy the full SHA 1902063View commit details -
Configuration menu - View commit details
-
Copy full SHA for d216c7c - Browse repository at this point
Copy the full SHA d216c7cView commit details -
[mono][interp] Fix GetType called on ptr constrained to Nullable` (#6…
…1020) * [interp] Fix GetType called on ptr constrained to Nullable` We were statically optimizing this call to return the actual constrained class type, which is incorrect for nullables, because boxing of a nullable (as part of the constrained call) actually creates an object with the type of the nullable's value (or null if there is no value). * Add test for GetType call on ptr constrained to nullable
Configuration menu - View commit details
-
Copy full SHA for c02a37c - Browse repository at this point
Copy the full SHA c02a37cView commit details -
improved BDD Unicode table representation in NonBacktracking engine (#…
…61142) * improved BDD Unicode table representation in NonBacktracking engine * remove line Co-authored-by: Dan Moseley <danmose@microsoft.com> * improved bounds-check elimination Co-authored-by: Stephen Toub <stoub@microsoft.com> * clearer notation of numbers Co-authored-by: Dan Moseley <danmose@microsoft.com> * fixed typo Co-authored-by: Dan Moseley <danmose@microsoft.com> Co-authored-by: Stephen Toub <stoub@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for b67f978 - Browse repository at this point
Copy the full SHA b67f978View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0c8baa2 - Browse repository at this point
Copy the full SHA 0c8baa2View commit details -
[DllImportGenerator] Use ElementMarshallingGeneratorFactory to create…
… the marshalling generator for collection elements (#61219)
Configuration menu - View commit details
-
Copy full SHA for 82d667c - Browse repository at this point
Copy the full SHA 82d667cView commit details -
Fold S.S.C.Encoding into new System.Security.Cryptography library
* Split the new library from just NetCoreAppCurrent to all of the varieties that S.S.C.Encoding had, plus browser. * Move src/libraries/System.Security.Cryptography.Encoding/src/System/... to src/libraries/System.Security.Cryptography/src/System/... * Move src/libraries/System.Security.Cryptography.Encoding/src/Internal/Cryptography/* to src/libraries/System.Security.Cryptography.Encoding/src/System/Security/Cryptography/* * Merge in the Strings.resx content that was needed. * Added two ObjectDisposedException.ThrowIf calls to eliminate a resource from the move. * Move src/libraries/System.Security.Cryptography.Encoding/tests/... to src/libraries/System.Security.Cryptography.Encoding/tests/..., with a couple files gaining the "Tests" suffix that their class had. * Fix the namespaces of the previously moved from-Primitives tests to match the new location. * Fix the namespaces of the newly moved from-Encoding tests to match the new location. * Make System.Security.Cryptography.Encoding ref & src just build as facades/forwarders.
Configuration menu - View commit details
-
Copy full SHA for 8fbf206 - Browse repository at this point
Copy the full SHA 8fbf206View commit details
Commits on Nov 5, 2021
-
Configuration menu - View commit details
-
Copy full SHA for e7c1bc8 - Browse repository at this point
Copy the full SHA e7c1bc8View commit details -
Configuration menu - View commit details
-
Copy full SHA for ef85e2f - Browse repository at this point
Copy the full SHA ef85e2fView commit details -
Configuration menu - View commit details
-
Copy full SHA for c7be76d - Browse repository at this point
Copy the full SHA c7be76dView commit details -
[wasm] Revert back to eval in wasm InvokeJS with modularization suppo…
…rt . (#61212) Revert back to eval in wasm InvokeJS with modularization support . Wrap code to evaluate in a function with MONO, BINDING, INTERNAL and module as local variables. Added tests for running js expressions (successful, null, undefined, global scope separation) Co-authored-by: Pavel Savara <pavelsavara@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 39a4a70 - Browse repository at this point
Copy the full SHA 39a4a70View commit details -
Fix UnobservedTaskException from SemaphoreSlim.WaitAsync (#60890)
* Fix UnobservedTaskException from SemaphoreSlim.WaitAsync If a SemaphoreSlim.WaitAsync times out, it correctly returns false, but it also results in TaskScheduler.UnobservedTaskException being raised unexpectedly, due to internal use of a faulted task whose exception isn't observed. This fixes that by marking any such exceptions as having been observed. * Fix wasm build
Configuration menu - View commit details
-
Copy full SHA for fd07214 - Browse repository at this point
Copy the full SHA fd07214View commit details -
Configuration menu - View commit details
-
Copy full SHA for 852405c - Browse repository at this point
Copy the full SHA 852405cView commit details -
Fix build options for native test lib to not enable avx-512 (#61229)
Just enable AVX, so that we can run the lib on any of our test machines.
Configuration menu - View commit details
-
Copy full SHA for 1c7100b - Browse repository at this point
Copy the full SHA 1c7100bView commit details -
1388 xml serializer assembly load context awareness (#58932)
* Generate dynamic serialization assembly in the appropriate ALC, and don't keep any hard refs to types that could prevent unloading.
Configuration menu - View commit details
-
Copy full SHA for d2415c4 - Browse repository at this point
Copy the full SHA d2415c4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 17fa0c8 - Browse repository at this point
Copy the full SHA 17fa0c8View commit details -
[wasm] Add test for blazor/sdk fix for lazy loaded assemblies (#60673)
Co-authored-by: Larry Ewing <lewing@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for ed66b28 - Browse repository at this point
Copy the full SHA ed66b28View commit details -
Simplify minterm generation in Regex NonBacktracking engine (#61232)
PartitionTree had a holdover from when it was tracking the predicates that made up each minterm, which caused it to use order n too much memory for some patterns. Nodes with the same predicate as the parent are no longer created. This also significantly simplified the algorithm. Remove the deduplication, since its now optional and the only call site already passes in a unique set of predicates. Make MintermGenerator take an IEnumerable.
Configuration menu - View commit details
-
Copy full SHA for 215ff0b - Browse repository at this point
Copy the full SHA 215ff0bView commit details
Commits on Nov 6, 2021
-
Convert to OleDb assembly and last Cryptography DllImport to Generate…
…dDllImport (#61184) * Enable DllImport generator for all source projects. * Convert OleDb to only use GeneratedDllImport. * Update source generator to distinguish between "no marshalling info" which can cause a failure vs "missing support" which enables us to fallback to the marshalling forwarder. * Remove unused DllImports. * Reuse existing P/Invoke definitions.
Configuration menu - View commit details
-
Copy full SHA for f080744 - Browse repository at this point
Copy the full SHA f080744View commit details -
Configuration menu - View commit details
-
Copy full SHA for b344bb5 - Browse repository at this point
Copy the full SHA b344bb5View commit details -
Implement
GT_AND_NOT
for ARM/ARM64 (#59881)* Move late arithmetic to its own section in gtlist * Implement AND_NOT for AAarch * Delete the unnecessary platfrom-specific methods They were a leftover from some previous work. * Mention the SIMD origins of AND_NOT
Configuration menu - View commit details
-
Copy full SHA for 8273939 - Browse repository at this point
Copy the full SHA 8273939View commit details -
Remove BestFitMapping, CallingConvention, and ThrowOnUnmappableChar f…
…rom GeneratedDllImportAttribute (#61182)
Configuration menu - View commit details
-
Copy full SHA for 9dc08dd - Browse repository at this point
Copy the full SHA 9dc08ddView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6547b55 - Browse repository at this point
Copy the full SHA 6547b55View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7f4eb85 - Browse repository at this point
Copy the full SHA 7f4eb85View commit details -
ensure the AcceptSocket is cleared when AcceptAsync completes (#61258)
Co-authored-by: Geoffrey Kizer <geoffrek@windows.microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for dee4c0c - Browse repository at this point
Copy the full SHA dee4c0cView commit details -
Don't create a COM weak reference if the object is an aggregated COMW…
…rappers RCW. (#61267) * Don't create a COM weak reference if the object is an aggregated COMWrappers RCW. * Add test for weak reference + aggregation with native weak reference impl. * Apply suggestions from code review Co-authored-by: Aaron Robinson <arobins@microsoft.com> Co-authored-by: Aaron Robinson <arobins@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for aefb0fc - Browse repository at this point
Copy the full SHA aefb0fcView commit details -
Use the Xunit assert library instead of CoreCLRTestLibrary for most a…
…sserts (#61226) Asserts not provided by Xunit are provided by an AssertExtensions class. Tests that reference System.Private.Corelib directly will use a polyfill implementation based off the old CoreCLRTestLibrary asserts. All assert methods provided by CoreCLRTestLibrary have been changed to follow Xunit conventions.
Configuration menu - View commit details
-
Copy full SHA for 544532a - Browse repository at this point
Copy the full SHA 544532aView commit details
Commits on Nov 7, 2021
-
Configuration menu - View commit details
-
Copy full SHA for d40f560 - Browse repository at this point
Copy the full SHA d40f560View commit details
Commits on Nov 8, 2021
-
[mono][interp] Implement tailcalls (#59799)
* [interp] Fix opcode dump * [interp] Implement tailcalls Before this commit we supported tailcalls only for calls to the same method. Tailcalls are implemented by copying the call arguments to the start of the stack space, followed by replacing of the current executing method. * Re-enable test
Configuration menu - View commit details
-
Copy full SHA for 70dd2db - Browse repository at this point
Copy the full SHA 70dd2dbView commit details -
[wasm] Add console version of browser-bench sample (#60733)
* [wasm] Add console version of browser-bench sample Example run: > v8 --expose_wasm runtime.js -- --run Wasm.Console.Bench.Sample.dll -t Json:non,Exceptions:Inline console.info: Arguments: --run,Wasm.Console.Bench.Sample.dll,-t,Json:non,Exceptions:Inline console.debug: MONO_WASM: Initializing mono runtime console.debug: MONO_WASM: ICU data archive(s) loaded, disabling invariant mode console.debug: mono_wasm_runtime_ready fe00e07a-5519-4dfe-b35a-f867dbaf2e28 console.info: Initializing..... Benchmark started Json, non-ASCII text serialize count: 23, per call: 7.565217391304348ms, total: 0.174s ... Exceptions, TryCatchFilterInline count: 1766666, per call: 4.301888415806949E-05ms, total: 0.076s Summary Json, non-ASCII text serialize: 7.478260869565218ms Json, non-ASCII text deserialize: 10.789473684210526ms Exceptions, TryCatchFilterInline: 4.301888415806949E-05ms .md | measurement | time | |-:|-:| | Json, non-ASCII text serialize | 7.4783ms | | Json, non-ASCII text deserialize | 10.7895ms | | Exceptions, TryCatchFilterInline | 0.0430us | * Don't generate v8 script for browser project * Fix option set * Changes for linux/mac * Add link to bench sample README * Pass ARGS to the console version Add info about filtering and options to the README * Show how the table will looks like * Do not sign the assembly To avoid CSC : error CS8002: Referenced assembly 'Mono.Options, Version=6.0.0.0, Culture=neutral, PublicKeyToken=null' does not have a strong name. * Add examples how to run it on windows * Fix interpolated string * Improve formatting * Remove unwanted space
Configuration menu - View commit details
-
Copy full SHA for a8ac67a - Browse repository at this point
Copy the full SHA a8ac67aView commit details -
Configuration menu - View commit details
-
Copy full SHA for b9a2c48 - Browse repository at this point
Copy the full SHA b9a2c48View commit details -
Enable global constant propagation for GT_LCL_FLD (#61209)
These are leaf nodes without side effects, and we can sometimes evaluate them in VN, so it does not seem like there is any reason not to enable propagation for them.
Configuration menu - View commit details
-
Copy full SHA for 9e5bb65 - Browse repository at this point
Copy the full SHA 9e5bb65View commit details -
[main] Update dependencies from 10 repositories (#61087)
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com> Co-authored-by: Premek Vysoky <premek.vysoky@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 3c67145 - Browse repository at this point
Copy the full SHA 3c67145View commit details -
[main] Update dependencies from dotnet/runtime dotnet/xharness (#61309)
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for ff361bd - Browse repository at this point
Copy the full SHA ff361bdView commit details -
Fix value numbering of field assignments (#61113)
When value numbering an assignment to a field, VNApplySelectorsAssign was called twice, first for the field sequence to find the exact value, then for the heap VN update. This is not correct as the method expects to be called only for sequences that will end up updating a map with exact values, as it type checks the store with the helper VNApplySelectorsAssignTypeCoerce. Usage of VNApplySelectorsAssign to update the heap ended up meaning that any stores to struct fields ended up with casts for maps, blocking traversal in VNForMapSelect. A handful of positive diffs for this commit resulting from more CSEs and redundant branch optimizations, due to more precise liberal VNs.
Configuration menu - View commit details
-
Copy full SHA for 39ece73 - Browse repository at this point
Copy the full SHA 39ece73View commit details -
Removing
m_hostAssemblyMap
and ceremony around it (#61292)* remove m_hostAssemblyMap and ceremony around it * Removes SHash::AddPhases - support for callouts in hosted scenarios. * typos
Configuration menu - View commit details
-
Copy full SHA for 2266376 - Browse repository at this point
Copy the full SHA 2266376View commit details -
Type key hash tweaks. (#61234)
* use HashTypeKey(), remove ComputeHash() * nonrecursive HashTypeHandle * remove instrumentation from pendingload.cpp * two more uses of `ComputeHash()` * Make GCC happy * couple tweaks * unnecessary full fences.
Configuration menu - View commit details
-
Copy full SHA for 97ce13d - Browse repository at this point
Copy the full SHA 97ce13dView commit details -
Fix incorrect CCW decoding in GetObjectForCCW (#61193)
* Fix incorrect CCW decoding in GetObjectForCCW * Fix linux/mac build
Configuration menu - View commit details
-
Copy full SHA for 704f023 - Browse repository at this point
Copy the full SHA 704f023View commit details -
Configuration menu - View commit details
-
Copy full SHA for b665721 - Browse repository at this point
Copy the full SHA b665721View commit details -
Configuration menu - View commit details
-
Copy full SHA for 768f200 - Browse repository at this point
Copy the full SHA 768f200View commit details
Commits on Nov 9, 2021
-
Configuration menu - View commit details
-
Copy full SHA for be2b009 - Browse repository at this point
Copy the full SHA be2b009View commit details -
JIT: extend redundant relop to handle side effects (#61275)
Handle the case where the side-effecting redundant relop appears just before the jump tree relop. Also revamp how we search for related VNs so it can be done as a search loop.
Configuration menu - View commit details
-
Copy full SHA for 0797038 - Browse repository at this point
Copy the full SHA 0797038View commit details -
Add instructions for using Codespaces (#60996)
* Add instructions for using Codespaces * Automate resetting the HEAD to the same commit ID used to build the pre-built container * - Add notes about testing changes. - Add 4-core machines * Revert 4-core change since prebuild doesn't support multiple sku_names.
Configuration menu - View commit details
-
Copy full SHA for 3dfdcb9 - Browse repository at this point
Copy the full SHA 3dfdcb9View commit details -
Configuration menu - View commit details
-
Copy full SHA for dfb8c90 - Browse repository at this point
Copy the full SHA dfb8c90View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3447b9e - Browse repository at this point
Copy the full SHA 3447b9eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 920a4a3 - Browse repository at this point
Copy the full SHA 920a4a3View commit details -
Provide PEM implementations for AsymmetricAlgorithm.
Now that the Encoding and Primitive assemblies are unified, an implementation for PKCS#8 and SPKI keys can be provided in the abstract AsymmetricAlgorithm. Derived types will continue to override these members to provide support for additional PEM labels.
Configuration menu - View commit details
-
Copy full SHA for d39d805 - Browse repository at this point
Copy the full SHA d39d805View commit details -
[wasm][aot] Disable (again) `Microsoft.Extensions.Logging.Generators.…
Configuration menu - View commit details
-
Copy full SHA for 2924d19 - Browse repository at this point
Copy the full SHA 2924d19View commit details -
Convert concatenation string to interpolation for System.Private.Xml (#…
…60057) * use interpolation string * fix XmlSerializationReader * fix new line * fix new line for XmlSerializationReaderILGen * review feedback * review feedback * fix XmlTextWriter * fix Compiler * fix XmlSchemaExporter * fix XmlSchemas * fix XmlSerializationReader * fix XmlSerializationWriter * fix XmlSerializationWriter * fix XmlSerializationWriterILGen * fix QilValidationVisitor * fix XmlSerializationReaderILGen * fix XmlQueryOutput Co-authored-by: kronic <kronic@softland.ru>
Configuration menu - View commit details
-
Copy full SHA for 08aff10 - Browse repository at this point
Copy the full SHA 08aff10View commit details -
[wasm] Remove WasmBuildTemplate (#61315)
It is not needed anymore, as the flags and stripping is handled by msbuild and cmake. The configuration dependent template parameters are not used anymore.
Configuration menu - View commit details
-
Copy full SHA for 19a55ca - Browse repository at this point
Copy the full SHA 19a55caView commit details -
Configuration menu - View commit details
-
Copy full SHA for 057e34d - Browse repository at this point
Copy the full SHA 057e34dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 61d603f - Browse repository at this point
Copy the full SHA 61d603fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 985cb83 - Browse repository at this point
Copy the full SHA 985cb83View commit details -
SPMI: Use diffed bytes for jit-analyze and print more info (#61254)
Fix the misleading total bytes displayed when diffing with SPMI. If one of the JITs encountered missing data, the code bytes would not be included, while the other JIT could still have it included if it did not encounter missing data. Also add more information about missing SPMI data/successful replays printed. For replays that is useful to be able to gauge whether there is still ok coverage after a large change. For diffs, we print a warning for missing SPMI data that the diff summary may be misleading. Example for a successful replay: Clean SuperPMI replay (219868 contexts processed) Example for a replay with missing data: SuperPMI encountered missing data for 6 out of 27272 contexts Example warning printed: Warning: SuperPMI encountered missing data during the diff. The diff summary printed above may be misleading. Missing with base JIT: 0. Missing with diff JIT: 6. Total contexts: 27272.
Configuration menu - View commit details
-
Copy full SHA for 9c37cdc - Browse repository at this point
Copy the full SHA 9c37cdcView commit details -
Proper VNs for zeroed structs (#61285)
* Number zero-initialized struct properly Previously, zero-initialized struct locals were given a special $VNForZeroMap, which had the nice property that VNForMapSelect($VNForZeroMap, Field) would always return zero of the appropriate type. However, the fact that this VN is not unique meant that it was dangerous to propagate it, e. g. through copies, which was hidden by the fact that ApplySelectorsTypeCheck's logic is very conservative. This change introduces a new VNFunc to represent zeroed objects - VNF_ZeroObj, that takes a struct handle as its argument and is thus free of the aforementioned problem and can be propagated freely and not treated specially. It also, of course, retains the ZeroMap's selection property. There are almost no diffs for this change because of some other deficiencies in assertion and copy propagation, they are being/will be fixed separately. * Fix VNZeroForType's handling of SIMD types Previously this codepath was reachable, but did not matter as the returned values were immediately discarded because of the conservative logic in VNApplySelectorsTypeCheck. This is still more or less the case, but let's just fix it properly.
Configuration menu - View commit details
-
Copy full SHA for 8d93078 - Browse repository at this point
Copy the full SHA 8d93078View commit details -
Start tracking debug info for inlined statements (#61220)
* Refactor IL_OFFSETX into DebugInfo Remove IL_OFFSETX in favor of a DebugInfo structure. Previously we were packing extra information into the upper bits of IL_OFFSETX, which are now separate bit fields on a new ILLocation structure. DebugInfo contains an ILLocation and also an inline context, which will be used in the future when tracking debug info inside of inlinees. Another problem with IL_OFFSETX was that there were several sentinel values used to describe prologs, epilogs and no mappings. However these were only used in code-gen, so refactor codegen to track this separately instead of having to muddle it into IL_OFFSETX. This makes it clearer what we can expect from IL offsets during JIT. This change is no-diff and PIN also shows that TP is not negatively affected; in fact, there seems to be a small TP gain, maybe because we don't have to handle sentinel values anymore. * Track debug information in statements from inlinees Add support for tracking debug information in statements coming from inlinees. Changes: * Turn on compDbgInfo in inlinees. We use the implicit boundaries from the inline root, but we do not use any explicit boundaries. That is, we do not query the EE for explicit boundaries for the inlinee. * Create InlineContexts eagerly and use them during import. All DebugInfo created in the JIT is in a "consistent" state, meaning that we never see an IL location set without a corresponding inline context. This was difficult before as InlineContexts would be created quite late, after the importer for the inlinee had run. We now create it eagerly and attach it to debug info during importation. Later, when we figure out whether an inline succeeded or not, we mark it as succeeded or failed. * Stop carrying InlineContext around unconditionally in Statement. The inline context is now only part of the debug info, which may not be set. Inlining needs the inline context to create new inline contexts and to check for recursive inlines. Previously it retrieved it from the inline statement, but due to the above change we now have to get it from somewhere else. To do this we now keep it unconditionally together with InlineCandidateInfo so that we can retrieve it later. * Validate all created debug information when associated with a statement. This is done by creating a bitvector containing IL locations that mark the beginning of IL instructions, and validating that all IL offsets point to these when Statement::SetDebugInfo is called. * While we track debug info in statements from inlinees, the runtime side is still not hooked up. Currently we track the information until we get to rationalize, where we normalize all debug info back to the root inserted as GT_IL_OFFSET nodes. The change is free of any diffs due to this normalization. We also track IL offsets as part of basic blocks: these are also normalized to be in the root.
Configuration menu - View commit details
-
Copy full SHA for 731364d - Browse repository at this point
Copy the full SHA 731364dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 26c045b - Browse repository at this point
Copy the full SHA 26c045bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6d5f59b - Browse repository at this point
Copy the full SHA 6d5f59bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 60b7ea5 - Browse repository at this point
Copy the full SHA 60b7ea5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 603aedf - Browse repository at this point
Copy the full SHA 603aedfView commit details -
InstallWorkload: Use the repo's
nuget.config
as the base for instal……ling manifests (#60699)
Configuration menu - View commit details
-
Copy full SHA for 3076586 - Browse repository at this point
Copy the full SHA 3076586View commit details
Commits on Nov 10, 2021
-
Configuration menu - View commit details
-
Copy full SHA for a8cc1d0 - Browse repository at this point
Copy the full SHA a8cc1d0View commit details -
Configuration menu - View commit details
-
Copy full SHA for e5eafc9 - Browse repository at this point
Copy the full SHA e5eafc9View commit details -
Change WASM direct heap access to use helper functions (#61355)
Direct heap writes via Module.HEAPxx[y] = func(...) are incorrect because the left-hand side (according to spec) is evaluated before the right, so if evaluating func(...) causes the heap to grow, the assignment target becomes a detached buffer and the write goes nowhere, breaking your application. This PR introduces a new set of helper functions for memory reads and writes.
Configuration menu - View commit details
-
Copy full SHA for 3dce93b - Browse repository at this point
Copy the full SHA 3dce93bView commit details -
[wasm] Add task marshaling tests. (#61324)
Add various tests for marshaling task to JavaScript promise. - Sync and async. - Task and ValueTask. - Generic and non-generic. - Successful and failed.
Configuration menu - View commit details
-
Copy full SHA for e64cce6 - Browse repository at this point
Copy the full SHA e64cce6View commit details -
[wasm][debugger] Correct the endian swapping and string implementation (
#61386) * [wasm][debugger[ Correct the endian swapping and string implementation
Configuration menu - View commit details
-
Copy full SHA for 45543cc - Browse repository at this point
Copy the full SHA 45543ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4952db9 - Browse repository at this point
Copy the full SHA 4952db9View commit details -
Delete unused mono_unbox_int (#61384)
* Delete unused mono_unbox_int * Fix gcc step display name * Match command invocation order
Configuration menu - View commit details
-
Copy full SHA for b07b26d - Browse repository at this point
Copy the full SHA b07b26dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1d352fc - Browse repository at this point
Copy the full SHA 1d352fcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4cd689a - Browse repository at this point
Copy the full SHA 4cd689aView commit details -
Configuration menu - View commit details
-
Copy full SHA for f9e0256 - Browse repository at this point
Copy the full SHA f9e0256View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4e3eed5 - Browse repository at this point
Copy the full SHA 4e3eed5View commit details -
Fix inconsistency in p/invoke arguments introduced when switching som…
…e to be blittable (#61071)
Configuration menu - View commit details
-
Copy full SHA for 213020c - Browse repository at this point
Copy the full SHA 213020cView commit details -
Create superpmi-asmdiffs pipeline (#61194)
Create a new `runtime-coreclr superpmi-asmdiffs` pipeline that runs SuperPMI asmdiffs for every change in the JIT directory. The diffs are run on two platforms: Windows x64 and Windows x86. Linux, and Arm64 and Arm32, asm diffs are done using cross-compilers, as follows: | Platform | Asm diffs | | -- | -- | | Windows x64 | win-x64, win-arm64, linux-x64, linux-arm64 | | Windows x86 | win-x86, linux-arm | The resulting summary .md files are uploaded into the pipeline artifacts, one .md file per platform (so, one for the Windows x64 runs and one for the Windows x86 runs). The results are also displayed in "Extensions" page of the AzDO pipeline. The runs take about 50 minutes to complete (assuming not much waiting for machines). The asm diffs pipeline is similar to the "superpmi-replay" pipeline, except: 1. It determines what an appropriate baseline JIT would be based on the PR commit and how it merges with the `main` branch. Given this, it downloads the matching baseline JITs from the JIT rolling build artifacts in Azure Storage. 2. It clones the `jitutils` repo and builds the `jit-analyze` tool, needed to generate the summary .md file. 3. It downloads and adds to the Helix machine payload a "portable" `git` installation, as `git diff` is used by `jit-analyze` for analyzing the generated .dasm files of the diff. 4. It collects all the various summary.md files into one per platform on which the runs are done, and publishes that to the artifacts and the `Extensions` page. 5. It only does one replay (asmdiffs) run, not one for each of a set of multiple stress modes. As part of this implementation, a. The `azdo_pipelines_util.py` was renamed to `jitutil.py`, and a lot of utility functions from superpmi.py were moved over to it. This was mostly to share the code for downloading and uncompressing .zip files. (There is a slight change to the output from the `superpmi.py download` command as a result.) However, I also moved a bunch of simple, more general helpers, for possible future sharing. b. `jitrollingbuild.py download` can now take no arguments and download a baseline JIT (from the JIT rolling build Azure Storage location), for the current enlistment, to the default location. Previously, it required a specific git_hash and target directory. There is similar logic in superpmi.py, but not quite the same. c. The `superpmi.py --no_progress` option was made global, and applied in a few more places. This was necessary because `superpmi.py asmdiffs` will download a coredistools binary from the JIT Azure Storage if one isn't found in the Core_Root folder. Fixes #59445
Configuration menu - View commit details
-
Copy full SHA for 8fe767f - Browse repository at this point
Copy the full SHA 8fe767fView commit details -
[main] Update dependencies from dotnet/arcade dotnet/icu dotnet/emsdk…
… dotnet/hotreload-utils dotnet/llvm-project (#61365) Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com> Co-authored-by: Ankit Jain <radical@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for d15f391 - Browse repository at this point
Copy the full SHA d15f391View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f43e82 - Browse repository at this point
Copy the full SHA 4f43e82View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9a883b5 - Browse repository at this point
Copy the full SHA 9a883b5View commit details
Commits on Nov 11, 2021
-
Explicitly mark tests with CLRTestKind=SharedLibrary (#61235)
Previously the Directory.Build.targets script used to automatically infer that OutputType=Library without a CLRTestKind implies SharedLibrary. This is however hard to consolidate with the planned test merging - as the SDK script set OutputType=Library by default, we need the combination Library+(implicit)BuildAndRun to indicate the "new-style" [Fact]-based tests. For this reason I propose to remove this automatic inference and manually fix the handful of tests that are missing an explicit CLRTestKind=SharedLibrary property. In light of this description we can theoretically remove the OutputType=Library specification from all test projects but even if we decide to do that, I believe it will be easier to do that as a separate mechanical change, not as part of this relatively small change that has a different purpose. Additionally in the one case of the GitHub_22583 regression test, I removed the explicit setting of GenerateRunScript=false because that's the default. Fix OutputType=exe in OpenDelegate.csproj I believe this was a pre-existing bug - previously, with the special clause regarding SharedLibrary, the test just got silently skipped because it was considered to be a shared library. Thanks Tomas
Configuration menu - View commit details
-
Copy full SHA for fd64e64 - Browse repository at this point
Copy the full SHA fd64e64View commit details -
Fix Array ctor integer widening and add Reflection tests (#61347)
* coreclr/ Make sure integral types respect sign extension during widen operation for Invoke Array ctor. Remove always false IsStructRequiringStackAllocRetBuf(). * mono/ Create macro define for SPAN_T. * libraries/ Add tests for Reflection Binder type conversion support during Invoke.
Configuration menu - View commit details
-
Copy full SHA for ff82b6d - Browse repository at this point
Copy the full SHA ff82b6dView commit details -
Configuration menu - View commit details
-
Copy full SHA for b837efa - Browse repository at this point
Copy the full SHA b837efaView commit details -
JIT: slightly more aggressive tail duplication (#61179)
Catch patterns like the one in #37904 where a trinary compare feeds a binary compare.
Configuration menu - View commit details
-
Copy full SHA for b82dc92 - Browse repository at this point
Copy the full SHA b82dc92View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2ed526e - Browse repository at this point
Copy the full SHA 2ed526eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6f5de0b - Browse repository at this point
Copy the full SHA 6f5de0bView commit details -
Some more precise debug info improvements (#61419)
* We were not recording precise info in inlinees except for at IL offset 0 because most of the logic that handles determining when to attach debug info did not run for inlinees. There are no changes in what the EE sees since we were normalizing debug info back to the root anyway. * Propagate debug info even further than just until rationalization, to make it simpler to dump the precise debug info. This means we create some more GT_IL_OFFSET nodes, in particular when the inlinee debug info is valid but the root info is invalid. This is currently happening for newobj IL instructions when the constructor is inlined. We generate two statements: GT_ASG(GT_LCL_VAR(X), ALLOCOBJ(CLS)); GT_CALL(CTOR, GT_LCL_VAR(X)) and the first statement ends up "consuming" the debug info, meaning we end up with no debug info for the GT_CALL, which eventually propagates into the inline tree. I have held off on fixing this for now since it causes debug info diffs in the data reported back to the EE. The additional nodes in LIR result in 0.15% more memory use and 0.015% more instructions retired for SPMI over libraries. There is also a small fix in gtlist.h for GT_BFIZ when MEASURE_NODE_SIZES is defined. No SPMI diffs.
Configuration menu - View commit details
-
Copy full SHA for a761b9f - Browse repository at this point
Copy the full SHA a761b9fView commit details -
[Mono] Skip flaky android tests (#61460)
There are connectivity issues on some physical Android devices. We should disable the affected tests until the issue isn't resolved. Ref #61343
Configuration menu - View commit details
-
Copy full SHA for 8ad84e8 - Browse repository at this point
Copy the full SHA 8ad84e8View commit details -
Fix bug where we reference the entry #0 in the pinned plug queue (#60966
) We reference entry #0 in the pinned plug queue even if there are no pinned plugs at all and thus the pinned plug queue contains left-over data from the mark phase. The fix is to initialize saved_pinned_plug_index to a value that is invalid as a pinned plug queue index, and only use saved_pinned_plug_index as an index if is valid.
Configuration menu - View commit details
-
Copy full SHA for 4b90e80 - Browse repository at this point
Copy the full SHA 4b90e80View commit details -
[main] Update dependencies from 5 repositories (#61463)
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 108fb82 - Browse repository at this point
Copy the full SHA 108fb82View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2da44f3 - Browse repository at this point
Copy the full SHA 2da44f3View commit details -
Refine superpmi-replay trigger (#61469)
Don't run if the JIT-EE GUID has changed, since there won't be any collections to download, so the downloads will fail. Also update the superpmi-asmdiffs trigger comment.
Configuration menu - View commit details
-
Copy full SHA for 0ad6cdc - Browse repository at this point
Copy the full SHA 0ad6cdcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 775873f - Browse repository at this point
Copy the full SHA 775873fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8684c21 - Browse repository at this point
Copy the full SHA 8684c21View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2099752 - Browse repository at this point
Copy the full SHA 2099752View commit details -
Updating src/tests/Interop/PInvoke/Generics/GenericsNative.Vector* to…
… annotate individual methods as requiring AVX (#61259) * Updating src/tests/Interop/PInvoke/Generics/GenericsNative.Vector* to annotate individual methods as requiring AVX * Always use __m256i on XARCH
Configuration menu - View commit details
-
Copy full SHA for c737141 - Browse repository at this point
Copy the full SHA c737141View commit details
Commits on Nov 12, 2021
-
XARCH: Remove redudant tests for GT_LT/GT_GE relops. (#61152)
* XARCH: Remove redudant tests for GT_LT/GT_GE relops. We can now optimize cases such as `(x + y < 0)` or `for (int x = v; x >= 0; x--)` using the flag tracking logic during the emit stage. Notably, cases that would generate... ``` add reg0, reg1 test reg0, reg0 jge LABEL ``` now transform to ``` add reg0, reg1 jns LABEL ``` This transform is valid for signed GE and signed LT only. * Add a few asserts related to flag reuse optimizations.
Configuration menu - View commit details
-
Copy full SHA for 99dd33b - Browse repository at this point
Copy the full SHA 99dd33bView commit details -
Implement Narrow and Widen using SIMDAsHWIntrinsic (#60094)
* Moving Narrow to implemented using SIMDAsHWIntrinsic * Moving Widen to implemented using SIMDAsHWIntrinsic * Fix some handling of Narrow/Widen hwintrinsics * Ensure that Vector.Widen is still treated as an intrinsic * Fixing NI_VectorT128_WidenUpper on ARM64 to actually call gtNewSimdWidenUpper
Configuration menu - View commit details
-
Copy full SHA for 5fa6dd3 - Browse repository at this point
Copy the full SHA 5fa6dd3View commit details -
[wasm] Add AppStart task to the bench Sample (#61481)
Measure browser app start times, 2 measurements implemented. First to measure till the JS window.pageshow event, second to measure time when we reach managed C# code. Example ouput: | measurement | time | |-:|-:| | AppStart, Page show | 108.1400ms | | AppStart, Reach managed | 240.2174ms |
Configuration menu - View commit details
-
Copy full SHA for 35704e4 - Browse repository at this point
Copy the full SHA 35704e4View commit details -
System.IO files cleanup (#61413)
* Environment.SystemPageSize returns cached value * we are no longer shipping MS.IO.Redist, so we can use Array.MaxLength directly * we are no longer shipping MS.IO.Redist, there is no need for File to be partial * we are no longer shipping MS.IO.Redist, there is no need for FileInfo to be partial * there is no need for .Win32.cs and .Windows.cs file anymore
Configuration menu - View commit details
-
Copy full SHA for 87a44c3 - Browse repository at this point
Copy the full SHA 87a44c3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5781948 - Browse repository at this point
Copy the full SHA 5781948View commit details -
Configuration menu - View commit details
-
Copy full SHA for b396034 - Browse repository at this point
Copy the full SHA b396034View commit details -
Remove all DLLIMPORTGENERATOR_ENABLED usage. (#61476)
* Remove all DLLIMPORTGENERATOR_ENABLED usage. * Explicitly set EnableDllImportGenerator to true in test project.
Configuration menu - View commit details
-
Copy full SHA for e7600e0 - Browse repository at this point
Copy the full SHA e7600e0View commit details -
[mono][jit] Optimize constrained calls to object.GetHashCode () where…
… the receiver is a gshared type constrained to a primitive type/enum. (#61513)
Configuration menu - View commit details
-
Copy full SHA for 8574ce9 - Browse repository at this point
Copy the full SHA 8574ce9View commit details -
[mono][jit] Optimize calls to Type:get_IsValueType () on gshared cons…
…trained types. (#61514) These are used for example in Span<T>:.ctor ().
Configuration menu - View commit details
-
Copy full SHA for c580f49 - Browse repository at this point
Copy the full SHA c580f49View commit details -
Fix optIsLoopEntry to skip removed loops (#61527)
This was preventing block compaction with loop entry blocks in loops that had been previously optimized away (and thus removed from the loop table). There are a few cases where we now delete dead code that was previously left in the function. There are a number of spurious local weighting and IG textual asm diffs changes, possibly due to how PerfScore is implemented (there are some surprisingly large PerfScore changes in a few cases, despite no change in (most) generated code).
Configuration menu - View commit details
-
Copy full SHA for 16b970a - Browse repository at this point
Copy the full SHA 16b970aView commit details -
Configuration menu - View commit details
-
Copy full SHA for aae8f51 - Browse repository at this point
Copy the full SHA aae8f51View commit details
Commits on Nov 13, 2021
-
[DllImportGenerator] Treat pointer fields in structs as blittable reg…
…ardless of what they point at (#61538)
Configuration menu - View commit details
-
Copy full SHA for 0818df1 - Browse repository at this point
Copy the full SHA 0818df1View commit details -
[mini] Allow MONO_VERBOSE_METHOD='*:*' (#61520)
Implement method name wildcard matching for method descriptions Globbing doesn't work because we don't have g_pattern_match_simple in eglib. But a plain '*' wildcard does work.
Configuration menu - View commit details
-
Copy full SHA for a4bb83a - Browse repository at this point
Copy the full SHA a4bb83aView commit details -
Update how OSR and PGO interact (#61453)
When both OSR and PGO are enabled: * Enable instrumenting OSR methods, so that the combined profile data from Tier0 plus any OSR variants provide a full picture for subsequent Tier1 optimization. * Use block profiles for both Tier0 methods that are likely to have patchpoints and OSR methods. * Fix phase ordering so partially jitted methods don't lose probes. * A few more fixes for partial compilation, because the number of things we think we might instrument and the number of things we end up instrumenting can differ. * Also improve the DumpJittedMethod output for OSR, and allow selective dumping of a particular OSR variant by specifying its IL offset. The updates on the runtime side are to pass BBINSTR to OSR methods, and to handle the (typical) case where the OSR method instrumentation schema is a subset of the Tier0 method schema. We are still allowing OSR methods to read the profile data. So they are both profile instrumented and profile optimized. Not clear if this is going to work well as the Tier0 data will be incomplete and optimization quality may be poor. Something to revisit down the road.
Configuration menu - View commit details
-
Copy full SHA for 26a6f55 - Browse repository at this point
Copy the full SHA 26a6f55View commit details -
[mono] Add a 'inline_method' profiler event. (#61454)
Emit it in the interpreter when a method is inlined or replaced with an intrinsic. This is needed so the AOT profiler can track these methods.
Configuration menu - View commit details
-
Copy full SHA for aa06797 - Browse repository at this point
Copy the full SHA aa06797View commit details
Commits on Nov 14, 2021
-
[mono] Disable partial generic sharing for gparams with non-enum cons…
Configuration menu - View commit details
-
Copy full SHA for edd6467 - Browse repository at this point
Copy the full SHA edd6467View commit details -
Enable new analyzers in global configs (#60914)
* Enable new analyzers in global configs * Address PR feedback
Configuration menu - View commit details
-
Copy full SHA for a3b186b - Browse repository at this point
Copy the full SHA a3b186bView commit details -
Add [Fact] attributes on TypeGeneratorTests (#61534)
For now there's no functional change to the behavior of the tests, I have just copied the bits to inject from Jeremy's example in his pending PR. Thanks Tomas
Configuration menu - View commit details
-
Copy full SHA for b68328a - Browse repository at this point
Copy the full SHA b68328aView commit details -
Completely lock-free ClassLoader::LookupTypeKey (#61346)
* embedded size * next array * read consistency while rehashing * comments * remove CRST_UNSAFE_ANYMODE and COOP mode in the callers * typo * fix 32bit builds * couple changes from review. * Walk the buckets in resize. * remove a `REVIEW:` comment. * Update src/coreclr/vm/dacenumerablehash.inl PR review suggestion Co-authored-by: Jan Kotas <jkotas@microsoft.com> * remove use of `auto` * DAC stuff * Constructor and GrowTable are not called by DAC, no need for DPTR, added a comment about a cast. * SKIP_SPECIAL_SLOTS * More compact dac_cast in GetNext Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 5da8f31 - Browse repository at this point
Copy the full SHA 5da8f31View commit details -
Add [Fact] attributes to methodical JIT tests (#61536)
For now there's no functional change to the behavior of the tests, I have just copied the bits to inject from Jeremy's example in his pending PR. Thanks Tomas Contributes to: #54512
Configuration menu - View commit details
-
Copy full SHA for d722224 - Browse repository at this point
Copy the full SHA d722224View commit details -
Add [Fact] attributes to JIT regression tests (#61540)
For now there's no functional change to the behavior of the tests, I have just copied the bits to inject from Jeremy's example in his pending PR. I have spot-checked that some of the tests use Main with the command-line args argument. I'm not changing them in this PR, the signature only becomes important once we start actually merging the IL tests and I presume we'll clean that up at that point. Thanks Tomas Contributes to: #54512
Configuration menu - View commit details
-
Copy full SHA for d3a8a27 - Browse repository at this point
Copy the full SHA d3a8a27View commit details -
Configuration menu - View commit details
-
Copy full SHA for 233c65d - Browse repository at this point
Copy the full SHA 233c65dView commit details
Commits on Nov 15, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 17d8fe5 - Browse repository at this point
Copy the full SHA 17d8fe5View commit details -
[main] Update dependencies from dotnet/linker (#61094)
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 0681dd6 - Browse repository at this point
Copy the full SHA 0681dd6View commit details -
Add JsonSerializerOptions.Default (#61434)
* Add JsonSerializerOptions.Default * address feedback * address feedback
Configuration menu - View commit details
-
Copy full SHA for 89d967b - Browse repository at this point
Copy the full SHA 89d967bView commit details -
`__DoCrossgen2` appears to be redundant with `__TestBuildMode=crossgen2`.
Configuration menu - View commit details
-
Copy full SHA for ebf4451 - Browse repository at this point
Copy the full SHA ebf4451View commit details -
[main] Update dependencies from 3 repositories (#61568)
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for a66a9d8 - Browse repository at this point
Copy the full SHA a66a9d8View commit details -
Rewrite selection for fields (#61370)
The issue was that VNApplySelectors uses the types of fields when selecting, but that's not valid for "the first field" maps. Mirror how the stores to fields are numbered.
Configuration menu - View commit details
-
Copy full SHA for bb3bdf8 - Browse repository at this point
Copy the full SHA bb3bdf8View commit details -
Disable poisoning for large structs (#61589)
For very large structs (> 64K in size) poisoning could end up generating instructions requiring larger local var offsets than we can handle. This hits IMPL_LIMIT that throws InvalidProgramException. Turn off poisoning for larger structs that require more than 16 movs to also avoid the significant code bloat by the singular movs. This is a less risky version of #61521 for backporting to .NET 6. Fix #60852
Configuration menu - View commit details
-
Copy full SHA for 21f9b73 - Browse repository at this point
Copy the full SHA 21f9b73View commit details -
SortedList<TKey, TValue> added GetKeyAtIndex, GetValueAtIndex, and Se…
…tValueAtIndex (#60520) * SortedList<TKey, TValue> added GetKeyAtIndex, GetValueAtIndex, and SetValueAtIndex * Update src/libraries/System.Collections/src/System/Collections/Generic/SortedList.cs Co-authored-by: Eirik Tsarpalis <eirik.tsarpalis@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 4cf86c2 - Browse repository at this point
Copy the full SHA 4cf86c2View commit details -
Remove the "anything + null => null" optimization (#61518)
This optimization is only legal if: 1) "Anything" is a sufficiently small constant itself. 2) We are in a context where we know the address will in fact be used for an indirection. It is the second point that is problematic - one would like to use MorphAddrContext, but it is not suitable for this purpose, as an unknown context is counted as an indirecting one. Additionally, the value of this optimization is rather low. I am guessing it was meant to support the legacy nullchecks, before GT_NULLCHECK was introduced, and had higher impact then. So, just remove the optimization and leave the 5 small regressions across all of SPMI be.
Configuration menu - View commit details
-
Copy full SHA for 3d7e89c - Browse repository at this point
Copy the full SHA 3d7e89cView commit details -
Use Span.Fill in String(Char, Int32) constructor (#60269)
* Apply suggestions from code review Co-authored-by: Adam Sitnik <adam.sitnik@gmail.com> Co-authored-by: Jeremy Koritzinsky <jkoritzinsky@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 31dd708 - Browse repository at this point
Copy the full SHA 31dd708View commit details -
Use GeneratedDllImport for blittable p/invokes in System.Diagnostics.…
…Process, System.Diagnostics.Process, System.Diagnostics.FileVersionInfo, System.Runtime.InteropServices.RuntimeInformation (#61532)
Configuration menu - View commit details
-
Copy full SHA for 4438760 - Browse repository at this point
Copy the full SHA 4438760View commit details -
Configuration menu - View commit details
-
Copy full SHA for a888829 - Browse repository at this point
Copy the full SHA a888829View commit details -
FileSystem.Unix: improve CopyFile. (#59695)
* FileSystem.Unix: improve CopyFile. Like the upcoming version of GNU coreutils 'cp' prefer a copy-on-write clone. This shares the physical storage between files, which means no data needs to copied. CoW-clones are supported by a number of Linux file systems, like Btrfs, XFS, and overlayfs. Eliminate a 'stat' call that is always performed for checking if the target is a directory by only performing the check when the 'open' syscall reports an error. Eliminate a 'stat' call for retrieving the file size of the source by passing through the length that was retrieved when checking the opened file is not a directory. Create the destination with file permissions that match the source. We still need to fchmod due to umask being applied to the open mode. When performing a manual copy, limit the allocated buffer for small files. And, avoid the last 'read' call by checking when we've copied the expected nr of bytes. * Don't FICLONE for zero sourceLength * PR feedback * When using sendfile, don't loop when source file gets truncated. * Fall through when FICLONE fails. * Don't stop CopyFile_ReadWrite until read returns zero. * Revert all changes to CopyFile_ReadWrite * Move comment a few lines up. * Fix unused error.
Configuration menu - View commit details
-
Copy full SHA for 9b83294 - Browse repository at this point
Copy the full SHA 9b83294View commit details -
Exclude the managed code around libproc on iOS/tvOS (#61590)
Since libproc is a private Apple API, it is not available on iOS/tvOS and should be excluded (see #61265 (comment) and above for more details). This PR excludes $(CommonPath)Interop\OSX\Interop.libproc.cs on the iOS/tvOS as well as makes some methods in Process, ProcessManager, and ProcessThread classes calling that API throw PNSE so that for iOS/tvOS it's possible to re-use the respective *.UnknownUnix.cs parts.
Configuration menu - View commit details
-
Copy full SHA for a53e489 - Browse repository at this point
Copy the full SHA a53e489View commit details -
Fix CharInClass reference in regex emitter (#61559)
We've tried to consistently use global:: whenever referring to core library types in the regex generator emitted code. I'd missed these two. (That said, these make the code a lot harder to read, especially in places where we're unable to use extension methods as extensions, so we'll want to revisit this policy.)
Configuration menu - View commit details
-
Copy full SHA for e85de53 - Browse repository at this point
Copy the full SHA e85de53View commit details -
Fix LastWriteTime and LastAccessTime of a symlink on Windows and Unix (…
…#52639) * Implement most of the fix for #38824 Reverts the changes in the seperate PR a617a01 to fix #38824. Does not re-enable the test because that relies on #49555, will add a seperate commit to whichever is merged last to enable the SettingUpdatesPropertiesOnSymlink test. * Most of the code for PR #52639 to fix #38824 • Deal with merge conflicts • Add FSOPT_NOFOLLOW for macOS and use it in setattrlist • Use AT_SYMLINK_NOFOLLOW with utimensat (note: there doesn't seem to be an equivalent for utimes) • Add SettingUpdatesPropertiesOnSymlink test to test if it actually sets it on the symlink itself (to the best that we can anyway ie. write + read the times) • Specify FILE_FLAG_OPEN_REPARSE_POINT for CreateFile in FileSystem.Windows.cs (is there any other CreateFile calls that need this?) * Remove additional FILE_FLAG_OPEN_REPARSE_POINT I added FILE_FLAG_OPEN_REPARSE_POINT before and it was then added in another PR, this removes the duplicate entry. * Add missing override keywords Add missing override keywords for abstract members in the tests. * Fix access modifiers Fix access modifiers for tests - were meant to be protected rather than public * Add more symlink tests, rearrange files • Move symlink creation api to better spot in non-base files • Add IsDirectory property for some of the new tests • Change abstract symlink api to CreateSymlink that accepts path and target • Create a CreateSymlinkToItem method that creates a symlink to an item that may be relative that uses the new/modified abstract CreateSymlink method • Add SettingUpdatesPropertiesCore to avoid code duplication • Add tests for the following variants: normal/symlink, target exists/doesn't exist, absolute/relative target • Exclude nonexistent symlink target tests on Unix for Directories since they are counted as files * Fix return type of CreateSymlink in File/GetSetTimes.cs * Remove browser from new symlink tests as it doesn't support creation of symlinks Remove browser from new symlink tests as it doesn't support creation of symlinks * Use lutimes, improve code readability, simplify tests • Use lutimes when it's available • Extract dwFlagsAndAttributes to a variable • Use same year for all tests • Checking to delete old symlink is unnecessary, so don't • Replace var with explicit type * Change year in test to 2014 to reduce diff * Rename symlink tests, use 1 core symlink times function, and check that target times don't change Rename symlink tests, use 1 core symlink times function, and check that target times don't change * Inline RunSymlinkTestPart 'function' Inline RunSymlinkTestPart 'function' so that the code can be reordered so the access time test can be valid. * Share CreateSymlinkToItem call in tests and update comment for clarity * Update symlink time tests • Make SettingUpdatesPropertiesOnSymlink a theory • Remove special case for Unix due to #52639 (comment) (will revert if fails) • Rename isRelative to targetIsRelative for clarity * Remove unnecessary Assert.All * Changes to SettingUpdatesPropertiesOnSymlink test • Rename item field to link field • Don't use if one-liner • Use all time functions since only using UTC isn't necessary • Remove the now-defunct IsDirectory property since we aren't checking it anymore * Remove unnecessary fsi.Refresh() • Remove unnecessary fsi.Refresh() since atime is only updated when reading a file * Updates to test and pal_time.c • Remove targetIsRelative cases • Multi-line if statement • Combine HAVE_LUTIMES and #else conditions to allow more code charing * Remove trailing space
Configuration menu - View commit details
-
Copy full SHA for f9d05bd - Browse repository at this point
Copy the full SHA f9d05bdView commit details -
Improve System.Speech trimmability (#61566)
by removing obvious warnings
Configuration menu - View commit details
-
Copy full SHA for 072e876 - Browse repository at this point
Copy the full SHA 072e876View commit details -
* Delete regArgList Unused. * Delete CountSharedStaticHelper Unused. * Delete GTF_RELOP_QMARK Unused. * Delete lvaPromotedStructAssemblyScratchVar Unused. * Delete dead code from fgMorphSmpOp The conditions tested constitute invalid IR. * Delete gtCompareTree Unused. * Delete gtAssertColonCond Unused. * Delete IsSuperPMIException Unused.
Configuration menu - View commit details
-
Copy full SHA for f01cd8d - Browse repository at this point
Copy the full SHA f01cd8dView commit details -
Configuration menu - View commit details
-
Copy full SHA for f3228da - Browse repository at this point
Copy the full SHA f3228daView commit details -
Loop refactoring and commenting improvements (#61496)
- Remove unneeded FIRST concept in loop table; it was always equal to TOP. - Rename optMarkLoopsBlocks to optScaleLoopBlocks to more accurately describe what it does. More consistently report block scaling in the dump - Create optMarkLoopHeads. This was refactored out of fgRemoveUnreachableBlocks so it can be called in a more logical location (at the beginning of optFindLoops), and only does one thing. - fgMakeOutgoingStructArgCopy: remove unused `argIndex` argument; reorder calls to fgMightHaveLoop. - Update and write a bunch of comments; convert away from `/* */` style comments.
Configuration menu - View commit details
-
Copy full SHA for fb6cf5c - Browse repository at this point
Copy the full SHA fb6cf5cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9fceaa0 - Browse repository at this point
Copy the full SHA 9fceaa0View commit details -
Create runtime staging clone to manually kick off full test runs (#61443
Configuration menu - View commit details
-
Copy full SHA for a93e0d2 - Browse repository at this point
Copy the full SHA a93e0d2View commit details -
Adding support for X86Base.Pause() and ArmBase.Yield() (#61065)
* Adding support for X86Base.Pause() and ArmBase.Yield() * Applying formatting patch * Ensure NI_ArmBase_Yield actually gets through to codegen on arm64
Configuration menu - View commit details
-
Copy full SHA for fdafc7c - Browse repository at this point
Copy the full SHA fdafc7cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5d3e70a - Browse repository at this point
Copy the full SHA 5d3e70aView commit details -
Delete impCheckForNullPointer (#61576)
The comment above the method mentions "many problems" with leaving null pointers around, but it is unclear what kind of problems. I can only speculate those were the problems in legacy codegen which "could not handle constant op1". It also mentions that "we cannot even fold (null+offset)", which is incorrect: "gtFoldExprConst" does in fact fold such expressions to zero byrefs. It is also the case that spilling the null into a local affects little as local assertion propagation happily propagates the null back into its original place. There was also a little bug associated with the method that got fixed: morph was trying to use it, and in the process created uses of a local that was not initialized, since the statement list used by the method is the importer's one, invalid in morph.
Configuration menu - View commit details
-
Copy full SHA for 2e97ac4 - Browse repository at this point
Copy the full SHA 2e97ac4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3b71d3b - Browse repository at this point
Copy the full SHA 3b71d3bView commit details -
Configuration menu - View commit details
-
Copy full SHA for d471a03 - Browse repository at this point
Copy the full SHA d471a03View commit details -
Restrict GITHUB_TOKEN in markdownlint action (#61622)
Currently, Actions in the dotnet/runtime repository have read/write access by default, unless their permissions have been explicitly declared. The markdownlint workflow can be restricted from all access except the repository contents. This limits what the 3rd party `markdownlint-cli` npm package can do which is installed as part of the workflow.
Configuration menu - View commit details
-
Copy full SHA for 6401f33 - Browse repository at this point
Copy the full SHA 6401f33View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1c76754 - Browse repository at this point
Copy the full SHA 1c76754View commit details
Commits on Nov 16, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 25da88c - Browse repository at this point
Copy the full SHA 25da88cView commit details -
Obsolete thumbtacked AssemblyName properties (#59522)
* Obsolete thumbtacked AssemblyName properties Fix #59061 * Ignore obsoletion * Fix pragma * Merge the AssemblyName member obsoletions into a single diagnostic id * Fix pragma to use updated diagnostic id * Suppress SYSLIB0037 in reflection tests * Suppress SYSLIB0037 warnings Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com> Co-authored-by: Jeff Handley <jeff.handley@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for e10532a - Browse repository at this point
Copy the full SHA e10532aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 56acd2e - Browse repository at this point
Copy the full SHA 56acd2eView commit details -
XArch: Trim the code block to match the actual code length (#61523)
* Trim the hot code size to the actual code length * Remove allocatedHotCodeSize field * Remove verbose logging * Perform trimming only for xarch * Include more comment about armarch * Fix the condition for arm64
Configuration menu - View commit details
-
Copy full SHA for 4d82463 - Browse repository at this point
Copy the full SHA 4d82463View commit details -
Provide locations for src-gen diagnostic output (#61430)
* Provide locations for src-gen diagnostic output * Fix tests and address feedback * Add defensive check for context type location
Configuration menu - View commit details
-
Copy full SHA for a89debf - Browse repository at this point
Copy the full SHA a89debfView commit details -
Fix SuperPMI Python script Azure usage (#61650)
The on-demand Azure module load was refactored to jitutil.py, but that requires some cross-module importing to work. Do the minimal required to make this work.
Configuration menu - View commit details
-
Copy full SHA for 0d11ae8 - Browse repository at this point
Copy the full SHA 0d11ae8View commit details -
Configuration menu - View commit details
-
Copy full SHA for c566e25 - Browse repository at this point
Copy the full SHA c566e25View commit details -
Configuration menu - View commit details
-
Copy full SHA for c397327 - Browse repository at this point
Copy the full SHA c397327View commit details -
Configuration menu - View commit details
-
Copy full SHA for bd0c543 - Browse repository at this point
Copy the full SHA bd0c543View commit details -
Fix poisoning for very large structs (#61521)
For very large structs poisoning could end up generating instructions requiring larger local var offsets than we can handle which would hit an IMPL_LIMIT that throws InvalidProgramException. Switch to using rep stosd (x86/x64)/memset helper (other platforms) when a local needs more than a certain number of mov instructions to poison. Also includes a register allocator change to mark killed registers as modified in addRefsForPhysRegMask instead of by the (usually) calling function, since this function is used directly in the change.
Configuration menu - View commit details
-
Copy full SHA for 9a9a4f3 - Browse repository at this point
Copy the full SHA 9a9a4f3View commit details -
* Unify some code and load mono-config.json using our _fetch_asset
Configuration menu - View commit details
-
Copy full SHA for 2b1f420 - Browse repository at this point
Copy the full SHA 2b1f420View commit details -
[wasm][debugger] Improvement of memory consumption while Evaluating E…
…xpressions (#61470) * Fix memory consumption. * Fix debugger-tests * Fix compilation. * Addressing @lewing PR. * Address @lewing comment * Addressing @radical comment. * Addressing comments. * Addressing @radical comments. * missing return. * Addressing @radical comments * Adding test case Co-authored-by: Larry Ewing <lewing@microsoft.com> * Fixing tests. * Adding another test case. Thanks @lewing. * Reuse the script. Co-authored-by: Larry Ewing <lewing@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 7b74a7e - Browse repository at this point
Copy the full SHA 7b74a7eView commit details -
[wasm][debugger] View multidimensional array when debugging (#60983)
* It's working when debug from chrome but not when debug from VS, because it uses callFunctionOn * Remove unrelated change. * Working also on VS. * Working also on VS. * Addressing @lewing and @radical comments * Change ArrayDimensions to be a record and not a class as suggested by @radical. * Addressing @radical comments.
Configuration menu - View commit details
-
Copy full SHA for 293e5ed - Browse repository at this point
Copy the full SHA 293e5edView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0749730 - Browse repository at this point
Copy the full SHA 0749730View commit details -
Use GeneratedDllImport for blittable p/invokes in System.IO.Compressi…
…on, System.IO.Compression.Brotli, System.Net.Http, System.Net.NameResolution (#61638)
Configuration menu - View commit details
-
Copy full SHA for 3806e15 - Browse repository at this point
Copy the full SHA 3806e15View commit details -
Localized file check-in by OneLocBuild Task: Build definition ID 679:…
… Build ID 1472678 (#61680) * Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 1472242 * Localized file check-in by OneLocBuild Task: Build definition ID 679: Build ID 1472678
Configuration menu - View commit details
-
Copy full SHA for 9e11006 - Browse repository at this point
Copy the full SHA 9e11006View commit details -
[DllImportGenerator] Stop ignoring QCalls when looking for methods to…
… convert to GeneratedDllImport (#61678)
Configuration menu - View commit details
-
Copy full SHA for 8076522 - Browse repository at this point
Copy the full SHA 8076522View commit details -
Add .runsettings file to be able to run and debug tests on vscode in …
…codespace with prebuilt (#61684)
Configuration menu - View commit details
-
Copy full SHA for c66fa99 - Browse repository at this point
Copy the full SHA c66fa99View commit details
Commits on Nov 17, 2021
-
Configuration menu - View commit details
-
Copy full SHA for d459c65 - Browse repository at this point
Copy the full SHA d459c65View commit details -
JIT: don't import IL for partial compilation blocks (#61572)
Adjust partial comp not to import IL instead of importing it and then deleting the IR. Saves some time and also sometimes a bit of stack space as we won't create as many temps. Update both PC and OSR to check for blocks in handlers early, rather than pretending to support these and then backing out later.
Configuration menu - View commit details
-
Copy full SHA for 628a084 - Browse repository at this point
Copy the full SHA 628a084View commit details -
Update SPCL to use GeneratedDllImport where possible. (#61640)
* Update SPCL to use GeneratedDllImport where possible.
Configuration menu - View commit details
-
Copy full SHA for a1b391b - Browse repository at this point
Copy the full SHA a1b391bView commit details -
[wasm] renames and cleanup before modularization (#61596)
- no imports from outer scope - move dotnet to -extern-pre-js - re-enable JS minification with ES2018 - rename main javaScript files to main.js and test-main.js - sample and test script cleanup - rename set_exit_code method - rewrite test start as async method - improve script loading via script element on page in test - use BINDING.bind_static_method instead of INTERNAL where possible - better .d.ts exports - formatted html files - renamed modules.ts to imports.ts which makes more sense - improved error propagation - renamed __initializeImportsAndExports - delayed exit and stdout flush
Configuration menu - View commit details
-
Copy full SHA for da0e0f7 - Browse repository at this point
Copy the full SHA da0e0f7View commit details -
[mono][aot] Fix the inclusion of generic instances when doing profile…
…d AOT. (#61627) If a profile contained a method like List<AnInst>:.ctor () and the 'profile-only' option was used, the fully shared version of the method needs to be added to the aot image.
Configuration menu - View commit details
-
Copy full SHA for 0666ebc - Browse repository at this point
Copy the full SHA 0666ebcView commit details -
[wasm][debugger] Fix evaluation of a static class attribute; using cu…
…rrent namespace for evaluation (#61252) * Using current namespace as the default place to serach for the resolved class. * Add tests for static class, static fields and pausing in async method. * Added tests for class evaluation. * Fixing support to the current namespace and adding tests for it * Assuing that we search within the current assembly first. Removed tests that fail in Consol App. * Remove a test-duplicate that was not testing static class or static fields. * Fixing indentation. * Refixing indentation. * Refix indentations again. * Applied the advice about adding new blank lines. * Changed the current assembly check. * Extracting the check from the loop. One time check is enough. * Simplifying multiple test cases into one call. * Using local function as per review suggestion. * Added test that was skipped by mistake. * Added looking for the namespace in all assemblies because there is a chance it will be located out of the current assembly. * Extracting value based on the current frame, not the top of stack location. * Test for classes evaluated from different frames. * Fixing indentation and spaces. * Applied review comments for values evaluation. * Compressed two tests into one with MemberData. * Added test case of type without namespace (failing). * Addressed Ankit advices from the review. Co-authored-by: DESKTOP-GEPIA6N\Thays <thaystg@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 10e107d - Browse repository at this point
Copy the full SHA 10e107dView commit details -
Minor File.ReadAllBytes* improvements (#61519)
* switch from FileStream to RandomAccess * use Array.MaxLength as a limit for File.ReadAllBytes and fix an edge case bug for files: Array.MaxLength < Length < int.MaxValue * there is no gain of using FileOptions.SequentialScan on Unix, as it requires an additional sys call Co-authored-by: Dan Moseley <danmose@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for d1b3816 - Browse repository at this point
Copy the full SHA d1b3816View commit details -
Extend RegexCharClass.Canonicalize range inversion optimization (#61562)
* Extend RegexCharClass.Canonicalize range inversion optimization There's a simple optimization in RegexCharClass.Canonicalize that was added in .NET 5, with the goal of taking a set that's made up of exactly two ranges and seeing whether those ranges were leaving out exactly one character. If they were, the set can instead be rewritten as that character negated, which is a normalized form used downstream and optimized. We can extend this normalization ever so slightly to be for two ranges separated not just be a single character but by more than that as well. * Update TODO comment * Add some more reduction tests
Configuration menu - View commit details
-
Copy full SHA for 44d28bf - Browse repository at this point
Copy the full SHA 44d28bfView commit details -
Remove some unnecessary slicing from generated Regex code (#61701)
* Remove some unnecessary slicing from generated Regex code When we're outputting code to match a "multi" (a sequence of multiple characters), we're currently issuing a Slice for the known tracked offset even if that offset is 0. We can skip that nop. * Address PR feedback
Configuration menu - View commit details
-
Copy full SHA for 83661ff - Browse repository at this point
Copy the full SHA 83661ffView commit details -
Ignore missing data result from superpmi-replay run (#61699)
* Ignore missing data result * Move result = false only if error Code is other than 2/3
Configuration menu - View commit details
-
Copy full SHA for 5331f21 - Browse repository at this point
Copy the full SHA 5331f21View commit details -
Co-authored-by: kronic <kronic@softland.ru>
Configuration menu - View commit details
-
Copy full SHA for c03f4ec - Browse repository at this point
Copy the full SHA c03f4ecView commit details -
Remove XUnit reference metadata from tests I switched over last week (#…
…61691) During code review of my latest PR Bruce raised the concern that hard-coding public key values and version ID for the xunit.core reference will cause enormous maintenance pain if we decide to upgrade to a newer version of the module in the future. As Jeremy verified that the metadata is not really needed, I'm deleting it from all tests I switched over last week. Thanks Tomas
Configuration menu - View commit details
-
Copy full SHA for de883e3 - Browse repository at this point
Copy the full SHA de883e3View commit details -
[DllImportGenerator] Enable on projects without System.Memory and Sys…
…tem.Runtime.CompilerServices.Unsafe (#61704)
Configuration menu - View commit details
-
Copy full SHA for a508fb5 - Browse repository at this point
Copy the full SHA a508fb5View commit details -
Factor out and improve the vectorization of RegexInterpreter.FindFirs…
…tChar (#61490) * Factor out and improve the vectorization of RegexInterpreter.FindFirstChar This change started with the "simple" goal of factoring out the FindFirstChar logic from RegexInterpreter and consuming it in SymbolicRegexMatcher. The existing engines use FindFirstChar to quickly skip ahead to the next location that might possibly match, at which point they fall back to analyzing the whole pattern at that location. SymbolicRegexMatcher (used by RegexOptions.NonBacktracking) had its own implementation for this, which it used any time it entered a start state. This required non-trivial additional code to maintain, and there's no good reason it should be separate from the other engines. However, what started out as a simple change grew due to regressions that resulted from differences in the implementations. In particular, SymbolicRegexMatcher already works off of precomputed equivalence tables for casing, which gives it very different characteristics in this regard from the existing engines. For example, SymbolicRegexMatcher's existing "skip ahead to the next possible match start location" logic already evaluated all the characters that could possibly start a match, which included variations of the same character when using IgnoreCase, but the existing RegexInterpreter logic didn't. That discrepancy then results in a significant IgnoreCase regression for NonBacktracking due to losing the ability to use a vectorized search for the next starting location. We already plan to shift the existing engines over to a plan where all of these equivalences are computed at construction time rather than using ToLower at both construction time and match time, so this PR takes some steps in that direction, doing so for most of ASCII. This has added some temporary cruft, which we'll be able to delete once we fully shift the implementations over (which we should do in the near future). Another difference was SymbolicRegexMatcher was enabling use of IndexOfAny for up to 5 characters, whereas RegexOptions.Compiled was only doing up to 3 characters, and RegexInterpreter wasn't doing for any number. The PR now uses 5 everywhere. However, the more characters involved, the more overhead there is to IndexOfAny, and for some inputs, the higher the chances are that IndexOfAny will find a match sooner, which means its overhead compounds more. To help with that, we now not only compute the possible characters that might match at the beginning of the pattern, but also characters that might match at a fixed offset from the beginning of the pattern (e.g. in \d{3}-\d{2}-\d{4}, it will find the '-' at offset 3 and be able to vectorize a search for that and then back off by the relevant distance. That then also means we might end up with multiple sets to choose to search for, and this PR borrows an idea from Rust, which is to use some rough frequency analysis to determine which set should be targeted. It's not perfect, and we can update the texts use to seed the analysis (right now I based it primarily on *.cs files in dotnet/runtime and some Project Gutenberg texts), but it's good enough for these purposes for now. We'd previously switched to using IndexOf for a case-sensitive prefix string, but still were using Boyer-Moore for case-insensitive. Now that we're able to also vectorize a search for case-insensitive values (right now just ASCII letter, but that'll be fixed soon), we can just get rid of Boyer-Moore entirely. This saves all the costs to do with constructing the Boyer-Moore tables and also avoids having to generate the Boyer-Moore implementations in RegexOptions.Compiled and the source generator. The casing change also defeated some other optimizations already present. For example, in .NET 5 we added an optimization whereby an alternation like `abcef|abcgh` would be transformed into `abc(?:ef|gh)`, and that would apply whether case-sensitive or case-insensitive. But by transforming the expression at construction now for case-insensitive into `[Aa][Bb][Cc][Ee][Ff]|[Aa][Bb][Cc][Gg][Hh]`, that optimization was defeated. I've added a new optimization pass for alternations that will detect common prefixes even if they're sets. The casing change also revealed some cosmetic issues. As part of the change, when we encounter a "multi" (a multi-character string in the pattern), we convert that single case-insensitive RegexNode to instead be one case-sensitive RegexNode per character, with a set for all the equivalent characters that can match. This then defeats some of the nice formatting we had for multis in the source generator, so as part of this change, the source generator has been augmented to output nicer code for concatenations. And because sets like [Ee] are now way more common (since e.g. a case-insensitive 'e' will be transformed into such a set), we also special-case that in both the source generator and RegexOptions.Compiled, to spit out the equivalent of `(c | 0x20) == 'e'` rather than `(c == 'E'| c == 'e')`. Along the way, I cleaned up a few things as well, such as passing around a CultureInfo more rather than repeatedly calling CultureInfo.CurrentCulture, using CollectionsMarshal.GetValueRefOrAddDefault on a hot path to do with interning strings in a lookup table, tweaking SymbolicRegexRunnerFactory's Runner to itself be generic to avoid an extra layer of virtual dispatch per operation, and cleaning up code / comments in SymbolicRegexMatcher along the way. For the most part the purpose of the change wasn't to improve perf, and in fact I was willing to accept some regressions in the name of consolidation. There are a few regressions here, mostly small, and mostly for cases where we're simply paying an overhead for vectorization, e.g. where the current location is fine to match, or where the target character being searched for is very frequent. Overall, though, there are some substantial improvements. * Fix missing condition in RegexCompiler * Try to fix mono failures and address comment feedback * Delete more now dead code * Fix dead code emitting after refactoring Previously return statements while emitting anchors were short-circuiting the rest of the emitting code, but when I moved that code into a helper, the returns stopped having that impact, such that we'd end up emitting a return statement and then emit dead code after it. Fix it. * Remove some now dead code
Configuration menu - View commit details
-
Copy full SHA for 25237fa - Browse repository at this point
Copy the full SHA 25237faView commit details -
A few follow up changes to LookupTypeKey change (#61718)
* re-enable optimization when a token is replaced by corresponding type handle * compute "isNested" ony when we need it. * no need to make more than 2 attempts at reading
Configuration menu - View commit details
-
Copy full SHA for 8cf0b19 - Browse repository at this point
Copy the full SHA 8cf0b19View commit details -
Configuration menu - View commit details
-
Copy full SHA for 13024af - Browse repository at this point
Copy the full SHA 13024afView commit details -
Configuration menu - View commit details
-
Copy full SHA for 899bf97 - Browse repository at this point
Copy the full SHA 899bf97View commit details -
Configuration menu - View commit details
-
Copy full SHA for 16300e0 - Browse repository at this point
Copy the full SHA 16300e0View commit details -
* Add support for custom container for Linux Arm64 Update platform_matrix.yml to allow custom containers for Arm64 Linux runs. This is required for our performance runs as we need a newer version of the python runtime. This change follows the same pattern as https://github.com/dotnet/runtime/pull/59202/files * Update perf_slow.yml with correct container values
Configuration menu - View commit details
-
Copy full SHA for f9e3e28 - Browse repository at this point
Copy the full SHA f9e3e28View commit details -
src/tests tree test xunit-based source generated runner (#60846)
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com> Co-authored-by: Jan Kotas <jkotas@microsoft.com> Co-authored-by: Santiago Fernandez Madero <safern@microsoft.com> Co-authored-by: Tomas <trylek@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 9962c10 - Browse repository at this point
Copy the full SHA 9962c10View commit details
Commits on Nov 18, 2021
-
Remove
DisableImplicitNamespaceImports_DotNet
(#61656)Global usings no longer means "global breaking" after RC1.
Configuration menu - View commit details
-
Copy full SHA for 30550d6 - Browse repository at this point
Copy the full SHA 30550d6View commit details -
Upload dasm files as artifacts for "asmdiffs pipeline" (#61700)
* Temp change to disable align loop * download specific artifacts to squash: * Upload .dasm files * fix the build id * Add ci_run and retainOnlyTopFiles * Rename ci_run to retainOnlyTop * Disable struct promo to test asmdiff * Revert "Disable struct promo to test asmdiff" This reverts commit 3ef7adb. * fix the parameter retainOnlyTopFiles * add missing - * Revert "Temp change to disable align loop" This reverts commit b1de5c4. * Revert "download specific artifacts" This reverts commit db3de57. * Review comments
Configuration menu - View commit details
-
Copy full SHA for 66b31ca - Browse repository at this point
Copy the full SHA 66b31caView commit details -
[wasm][debugger] Tie sdb agent lifetime to the ExecutionContext and s…
…implify the api (#61392) * Make SMonoSdbHelper part of the execution context
Configuration menu - View commit details
-
Copy full SHA for 0d25969 - Browse repository at this point
Copy the full SHA 0d25969View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7f874ee - Browse repository at this point
Copy the full SHA 7f874eeView commit details -
Hide 'align' instruction behind jmp (#60787)
* Hide align behind a jmp fix the alignBytesRemoved Some fixes and working model Some fixes and redesign Some more fixes more fixes fix Add the check for fgFirstBB misc changes code cleanup + JitHideAlignBehindJmp switch validatePadding only if align are before the loop IG More cleanup, remove commented code jit format * Fix a problem where curIG==0 and loop might be emitted in curIG, adjust the targetIG to prevIG Add IGF_REMOVED_ALIGN flag for special scenarios * Add stress mode to emit int3 for xarch * Add stress mode to emit bkpt for arm64 * Add a loop align instruction placement phase * review comments * Change from unsigned short to unsigned * review comments around cleanup * emitForceNewIG * Remove emitPrevIG * Revert change to forceNewIG for align instruction * Use loopAlignCandidates * Use loopHeadIG reference * jit format * Remove unneeded method * Misc changes * Review feedback * Do not include align behind Jmp in PerfScore calculation * jit format and fix a bug * fix the loopCandidates == 0 scenario * Add unmarkLoopAlign(), add check for fgFirstBB * merge conflict fix * Add missing } * Grammar nit Co-authored-by: Bruce Forstall <brucefo@microsoft.com> Co-authored-by: Bruce Forstall <brucefo@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for 581d4d2 - Browse repository at this point
Copy the full SHA 581d4d2View commit details -
Create runtime clone to manually kick off full test runs (#61641)
This change allows devs to manually kick off full test runs on the configurations that only execute smoke tests per PR. To kick things off, you can run /azp run runtime-manual
Configuration menu - View commit details
-
Copy full SHA for 95e3144 - Browse repository at this point
Copy the full SHA 95e3144View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8275c37 - Browse repository at this point
Copy the full SHA 8275c37View commit details -
Convert Crypto P/Invokes to GeneratedDllImport. (#61742)
* Convert Crypto P/Invokes to GeneratedDllImport.
Configuration menu - View commit details
-
Copy full SHA for f6e2377 - Browse repository at this point
Copy the full SHA f6e2377View commit details -
Use GeneratedDllImport in System.Data.Odbc, System.IO.Ports, System.S…
…erviceProcess.ServiceController (#61741)
Configuration menu - View commit details
-
Copy full SHA for 23c386a - Browse repository at this point
Copy the full SHA 23c386aView commit details -
Reduce the output from tests. (#61593)
- Do not printout exceptions from failing task tests. - Remove default MONO_LOG_MASK=gc from debug configuration.
Configuration menu - View commit details
-
Copy full SHA for d9afc1e - Browse repository at this point
Copy the full SHA d9afc1eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 37bf145 - Browse repository at this point
Copy the full SHA 37bf145View commit details -
FileSystemEntry.Unix: ensure properties are available when file is de…
…leted. (#60214) * FileSystemEntry.Unix: ensure attributes are available when file is deleted. When the file no longer exists, we create attributes based on what we know. The test for this was passing because it cached the attributes before the item was deleted due to enumerating with skipping FileAttributes.Hidden. * GetLength: fix reading from uninitialized cache.
Configuration menu - View commit details
-
Copy full SHA for 5181d12 - Browse repository at this point
Copy the full SHA 5181d12View commit details -
FileStatus.Unix/Process.Unix: align caching of user identity. (#60160)
* FileStatus.Unix/Process.Unix: align implementation. Process: remove the user identity caching and extend the logic to avoid retrieving the identity in most cases by checking if all x-bits are set or not set. FileStatus: use same group check as Process. FileStatus: cache the read only flag instead of caching the identity.
Configuration menu - View commit details
-
Copy full SHA for 80ca504 - Browse repository at this point
Copy the full SHA 80ca504View commit details -
Add support for dumping and using precise debug info (#61735)
* In the JIT, add support for dumping the precise debug info out through an environment variable `DOTNET_JitDumpPreciseDebugInfoFile` in a simple JSON format. This is a stopgap until we expose the extra information through ETW events. * In dotnet-pgo, add an argument --precise-debug-info-file which can point to the file produced by the JIT. When used, dotnet-pgo will get native<->IL mappings from this file instead of through ETW events. * In dotnet-pgo, add support for attributing samples to inlinees when that information is present. This changes the attribution process a bit: previously, we would group all LBR data/samples and then construct the profile from all the data. We now do it in a more streaming way where there is a SampleCorrelator that can handle individual LBR records and individual samples. * In dotnet-pgo, add an argument --dump-worst-overlap-graphs-to which can be used in the compare-mibc command to dump out a .dot file containing the flow graph of the methods with the worst overlap measures, and showing the relative weight count on each basic block and edge for the two profiles being compared. This is particular useful to find out where we are producing incorrect debug mappings, by comparing spgo.mibc and instrumented.mibc files.
Configuration menu - View commit details
-
Copy full SHA for 4db3531 - Browse repository at this point
Copy the full SHA 4db3531View commit details -
Add single char lazy loop support to simplified Regex code gen (#61698)
* Reduce atomic single char lazy loops * Add single char lazy loop support to simplified code gen
Configuration menu - View commit details
-
Copy full SHA for 9e986b5 - Browse repository at this point
Copy the full SHA 9e986b5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 513d38c - Browse repository at this point
Copy the full SHA 513d38cView commit details -
Remove duplicate checks (#61766)
These checks appears to be redundant.
Configuration menu - View commit details
-
Copy full SHA for 2b23bfa - Browse repository at this point
Copy the full SHA 2b23bfaView commit details -
[iOS] Follow up changes for 61590 (#61670)
This is a follow up PR for #61590. It includes: - additional UnsupportedOSPlatform annotations for some System.Diagnostics.Process APIs throwing PNSE on iOS/tvOS (they started doing so after excluding some managed logic around librpoc ) - fixing a bit ugly workaround for CS0649 (see https://github.com/dotnet/runtime/pull/61590/files#r749525127) - used a local pragma in the ThreadInfo class. - skipping the respective S.D.P. tests ( it will address [iOS/tvOS] System.Diagnostics.Tests.ProcessTests.TestGetProcesses fails on devices #60588 as well)
Configuration menu - View commit details
-
Copy full SHA for 62c29ff - Browse repository at this point
Copy the full SHA 62c29ffView commit details -
[Group 4] Enable nullable annotations for `Microsoft.Extensions.Confi…
…guration.Binder` (#57418) * Annotate * Update Microsoft.Extensions.Configuration.Binder.csproj * DisableImplicitAssemblyReferences * Nullablity fix * configureOptions are non-nullable * Revert "configureOptions are non-nullable" This reverts commit 5dac613. * NetCoreAppMinimum TFM * Revert non-nullable changes * Remove not needed project references * Refactor while * Revert non-nullable changes * Fix up csproj files to build for necessary TFMs Co-authored-by: Eric Erhardt <eric.erhardt@microsoft.com>
Configuration menu - View commit details
-
Copy full SHA for c0dabb5 - Browse repository at this point
Copy the full SHA c0dabb5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6ff57f1 - Browse repository at this point
Copy the full SHA 6ff57f1View commit details -
Configuration menu - View commit details
-
Copy full SHA for b11bda2 - Browse repository at this point
Copy the full SHA b11bda2View commit details -
Configuration menu - View commit details
-
Copy full SHA for ecdb7d2 - Browse repository at this point
Copy the full SHA ecdb7d2View commit details -
Configuration menu - View commit details
-
Copy full SHA for ca24ab0 - Browse repository at this point
Copy the full SHA ca24ab0View commit details -
Fix the only ilproj test that uses multiple command-line variants (#6…
…1750) I believe that despite its singular nature this is worth a separate review to make sure we're in agreement regarding the conversion principles. There are several things worth noting here: 1) According to the current plan we're continuously documenting in #54512 we want to remove command-line parameters from all test entrypoints. Variant tests driven by command-line parameters should be turned into multiple test cases marked with separate [Fact] attributes. 2) For ilproj tests, to facilitate local debugging, our current plan is to keep them runnable as standalone executables. This implies that ilproj tests comprising several [Fact] test entrypoints require a new entrypoint that just calls into the individual test cases. 3) The Roslyn-generated merged wrapper for the tests won't care about the "composite" main (that is for local debugging only), it will directly identify and use the individual test cases marked with [Fact] attributes. 4) In accordance with this scheme, such composite ILPROJ tests are specific in not having their entrypoint method itself marked with the [Fact] attribute. 5) Funnily enough this example nicely demonstrates the implied cleanup - the entire command-line machinery is only used for a handwritten switch to choose one of the three variants; moreover we only exercised two out of the three variants, possibly due to an authoring bug when creating the variant test, potentially caused by previous complexity of such endeavor. Thanks Tomas
Configuration menu - View commit details
-
Copy full SHA for 9d81462 - Browse repository at this point
Copy the full SHA 9d81462View commit details -
Configuration menu - View commit details
-
Copy full SHA for bd63cfc - Browse repository at this point
Copy the full SHA bd63cfcView commit details