- 14 4月, 2021 3 次提交
-
-
由 Tarek Mahmoud Sayed 提交于
Co-authored-by: NGenevieve Warren <24882762+gewarren@users.noreply.github.com>
-
由 Eric StJohn 提交于
* Add support for adding RIDs to RidGraph during build * Address code review feedback * Ensure GenerateRuntimeJson runs before Pack The pack task itself doesn't do anything but depend on a sequence of tasks. As a result running a target `BeforeTargets="Pack"` actually runs after the package is created, since dependencies run before BeforeTargets. Sequence the target before GenerateNuspec instead. * Only add target RID to the RID graph
-
由 Bruce Forstall 提交于
Try to avoid traversing the return block list it it's not necessary. Add a header comment. No diffs.
-
- 13 4月, 2021 32 次提交
-
-
由 Alexander Köplinger 提交于
We now have the necessary support in the runtime and arcade.
-
由 dotnet-maestro[bot] 提交于
Co-authored-by: Ndotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
-
由 Thays Grazia 提交于
[debugger][mono][icordbg] Implement minimal version of dbgshim to start an application on desktop (#50505) * Running debugger tests on windows using mono runtime * Coreclr Debugger Tests are running on windows * Removing wrong comments * Update src/mono/dlls/dbgshim/dbgshim.cpp Co-authored-by: NAleksey Kliger (λgeek) <akliger@gmail.com> * Changing what was suggested by @lambdageek * Fix running tests on Mac * Fix windows compilation removing unused messages * Fix merge * Fix compilation on other platforms then amd64 * Fix copy files when does not generate dbgshim and mscordbi * Ignore when mscodbig and dbgshim is not found * Fix copy files when they don't exist * Update src/mono/mono/mini/debugger-protocol.c Co-authored-by: NAleksey Kliger (λgeek) <akliger@gmail.com> Co-authored-by: NAleksey Kliger (λgeek) <akliger@gmail.com>
-
由 Aleksey Kliger (λgeek) 提交于
* [design] MonoVM Runtime Components * Add details about writing a new component * Update design doc to reflect latest changes in the prototype
-
由 Filip Navara 提交于
* Return iOS version in Environment.OSVersion on Mac Catalyst. Implement OperatingSystem.IsMacCatalyst and OperatingSystem.IsMacCatalystVersionAtLeast. * Address feedback * Ensure NSThread is in multi-threaded mode before using autorelease pool
-
由 Marek Safar 提交于
It's not used in Release build and it injects ununsed null value to every callsite
-
由 Peter Sollich 提交于
Fix issue with card marking stealing where getting a new chunk caused the "card" variable to go backwards. This caused an extra call to card_transition, which in turn caused cards to be cleared that should be set. The ultimate result is memory corruption. Here are the conditions that cause the bug to surface: - an object containing pointers that straddles a 2 MB boundary - the objects contains just value types (i.e. no pointers) for at least 256 bytes after the 2 MB boundary - there is a generation-crossing pointer afterwards in the same object - but that is the only generation-crossing pointer in that 256 byte range The bug comes about because of the following sequence of events: - in mark_through_cards_for_segments, we scan an object at the end of a 2 MB chunk - we encounter a pointer location that is already outside of that chunk (it belongs to card 2 in the next chunk) - we call card_transition, which advances the card to the card of the pointer location (i.e., to card 2 in the next chunk) - we realize that we need to get a new chunk - when we get the chunk, we set the card to card 0 in the chunk - we return to mark_through_cards_for_segments - as the next chunk is adjacent to the current one, we continue processing the current object - when we encounter the next pointer location in the object, we trigger a card_transition again - this will erroneously not clear cards 0 and 1 because we think it there is a cross-gen pointer - it will also reset the cross-gen generation pointer counter - thus, if there are no other cross-generation pointers in the 256 bytes described by card 2, card 2 will be erroneously cleared - having cards cleared erroneously ultimately leads to heap corruption The fix simply makes sure the "card" variable doesn't go backwards in find_next_chunk. It fixes the issue because it avoids the double card_transition. It is safe because during iteration of a segment, the "card" variable must always increase. When we switch to another segment, it may decrease, but that is fine because in this case it will be re-initialized by the logic in mark_through_cards_segments.
-
由 campersau 提交于
-
由 Sergey Andreenko 提交于
* lets VM return `isValueClass=false` for pointers. * fix assert and add a comment. * fix diffs. * fix crossgen2 part. * Update JITEEVersionIdentifier.
-
由 Sergey Andreenko 提交于
* Delete `JitDoOldStructRetyping`. * delete unnecessary spilling in `fgUpdateInlineReturnExpressionPlaceHolder`.
-
由 Adam Sitnik 提交于
* add a failing test that mimcs the SDK bug * fix the buffering bug
-
由 Elinor Fung 提交于
-
由 Bruce Forstall 提交于
* Generalize loop inversion Starting with an experimental branch from @AndyAyersMS, generalize the loop inversion `optInvertWhileLoop` code to consider duplicating an entire conditional block, not just a conditional block that contains exactly one JTRUE tree. Since the JTRUE itself wasn't considered before in the costing, bump up the maximum cost allowed by 2 to account for that. (Note that there is a lot of room here for tuning the cost/benefit analysis.) Additionally, the code already bumped the allowed cost if the condition tree contained calls to a shared static helper. Add another boost if the tree contains array.Length expressions, which are likely to be CSE'ed. Loop inversion by itself doesn't buy much, but our downstream phases, like natural loop recognition, loop hoisting, and loop cloning, depend on an inverted loop structure with a zero trip test. There are many diffs, typically size regressions because we are duplicating code. Some notable cases: 1. BenchI Puzzle. This was a motivating example, from #6569. It ends up with multiple new CSEs and BDN shows a 24% run-time improvement. 2. RegexRedux_5 and ReverseComplement_1 also report faster 3. On the contrary, FannkuchRedux_5 reports 23% slower. It appears we create fewer CSEs and end up with a couple more instructions inside some tight loops. 4. Other things typically seen in diffs: (a) removed null and bounds checks, (b) additional CSEs, (c) loop alignment kicks in. The loop matching at the stage inversion runs is lexical and very simplistic, as it is before natural loop recognition. As a result, for some loops, like multiple-condition `while` loops (e.g., `while (--digits >= 0 || value != 0)` in `System.Number:UInt32ToDecChars`), the inversion ends up creating some pretty weird flow. (That's actually not new to this change.) I added a `COMPlus_JitDoLoopInversion` config to allow turning off the phase to do experiments. Here are the diffs for SPMI on the benchmarks: ``` Summary of Code Size diffs: (Lower is better) Total bytes of base: 306240 Total bytes of diff: 306022 Total bytes of delta: -218 (-0.07% of base) diff is an improvement. ``` <details> <summary>Detail diffs</summary> ``` Top file regressions (bytes): 204 : 18210.dasm (13.98% of base) 123 : 17149.dasm (3.84% of base) 115 : 12617.dasm (1.95% of base) 106 : 19256.dasm (5.92% of base) 105 : 8717.dasm (8.19% of base) 94 : 5445.dasm (9.49% of base) 85 : 16452.dasm (1.48% of base) 82 : 19234.dasm (12.01% of base) 76 : 4626.dasm (20.05% of base) 64 : 18620.dasm (6.97% of base) 52 : 19202.dasm (16.20% of base) 50 : 19210.dasm (3.15% of base) 48 : 25971.dasm (0.66% of base) 46 : 18490.dasm (6.05% of base) 46 : 19131.dasm (8.44% of base) 36 : 17812.dasm (1.84% of base) 36 : 10409.dasm (4.20% of base) 36 : 15922.dasm (17.48% of base) 35 : 17997.dasm (11.18% of base) 34 : 14621.dasm (4.82% of base) Top file improvements (bytes): -557 : 18190.dasm (-19.94% of base) -525 : 18412.dasm (-12.80% of base) -260 : 18400.dasm (-19.89% of base) -202 : 17991.dasm (-16.67% of base) -201 : 20540.dasm (-18.91% of base) -200 : 18417.dasm (-9.96% of base) -159 : 17736.dasm (-7.87% of base) -128 : 18326.dasm (-7.15% of base) -90 : 18182.dasm (-4.71% of base) -67 : 18177.dasm (-3.94% of base) -59 : 18359.dasm (-5.13% of base) -53 : 20672.dasm (-8.02% of base) -53 : 18280.dasm (-10.77% of base) -45 : 18575.dasm (-8.08% of base) -42 : 16930.dasm (-7.89% of base) -40 : 17935.dasm (-4.77% of base) -38 : 17814.dasm (-2.11% of base) -38 : 18458.dasm (-4.87% of base) -36 : 18222.dasm (-3.07% of base) -36 : 18440.dasm (-6.75% of base) 376 total files with Code Size differences (153 improved, 223 regressed), 5 unchanged. Top method regressions (bytes): 204 (13.98% of base) : 18210.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceNamedTypeSymbol:MakeAcyclicInterfaces(Roslyn.Utilities.ConsList`1[[Microsoft.CodeAnalysis.CSharp.Symbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]],Microsoft.CodeAnalysis.DiagnosticBag):System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]:this 123 ( 3.84% of base) : 17149.dasm - Microsoft.CodeAnalysis.CSharp.Syntax.InternalSyntax.LanguageParser:ParseNamespaceBody(byref,byref,byref,ushort):this 115 ( 1.95% of base) : 12617.dasm - Utf8Json.Formatters.DictionaryFormatterBase`5[Int32,__Canon,__Canon,Enumerator,__Canon][System.Int32,System.__Canon,System.__Canon,System.Collections.Generic.Dictionary`2+Enumerator[System.Int32,System.__Canon],System.__Canon]:Serialize(byref,System.__Canon,Utf8Json.IJsonFormatterResolver):this 106 ( 5.92% of base) : 19256.dasm - <Microsoft-Cci-ITypeDefinition-GetExplicitImplementationOverrides>d__31:MoveNext():bool:this 105 ( 8.19% of base) : 8717.dasm - System.String:SplitWithPostProcessing(System.ReadOnlySpan`1[Int32],System.ReadOnlySpan`1[Int32],int,int,int):System.String[]:this 94 ( 9.49% of base) : 5445.dasm - System.Uri:CreateUriInfo(long):this 85 ( 1.48% of base) : 16452.dasm - DynamicClass:_DynamicMethod9(System.IO.TextReader,int):MicroBenchmarks.Serializers.MyEventsListerViewModel 82 (12.01% of base) : 19234.dasm - <GetTopLevelTypesCore>d__53:MoveNext():bool:this 76 (20.05% of base) : 4626.dasm - System.Collections.Generic.PriorityQueue`2[__Canon,__Canon][System.__Canon,System.__Canon]:MoveDownCustomComparer(System.ValueTuple`2[__Canon,__Canon],int):this 64 ( 6.97% of base) : 18620.dasm - Microsoft.CodeAnalysis.CSharp.Binder:BindSimpleBinaryOperator(Microsoft.CodeAnalysis.CSharp.Syntax.BinaryExpressionSyntax,Microsoft.CodeAnalysis.DiagnosticBag):Microsoft.CodeAnalysis.CSharp.BoundExpression:this 52 (16.20% of base) : 19202.dasm - <GetAssemblyReferencesFromAddedModules>d__36:MoveNext():bool:this 50 ( 3.15% of base) : 19210.dasm - <GetTopLevelTypes>d__23[__Canon,__Canon,__Canon,__Canon,__Canon,__Canon,__Canon,__Canon,__Canon][System.__Canon,System.__Canon,System.__Canon,System.__Canon,System.__Canon,System.__Canon,System.__Canon,System.__Canon,System.__Canon]:MoveNext():bool:this 48 ( 0.66% of base) : 25971.dasm - DynamicClass:_DynamicMethod1(System.IO.TextReader,int):MicroBenchmarks.Serializers.CollectionsOfPrimitives 46 ( 6.05% of base) : 18490.dasm - Microsoft.CodeAnalysis.CSharp.ClsComplianceChecker:VisitAssembly(Microsoft.CodeAnalysis.CSharp.Symbols.AssemblySymbol):this 46 ( 8.44% of base) : 19131.dasm - <AddedModulesResourceNames>d__200:MoveNext():bool:this 36 ( 1.84% of base) : 17812.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceNamespaceSymbol:MakeNameToMembersMap(Microsoft.CodeAnalysis.DiagnosticBag):System.Collections.Generic.Dictionary`2[[System.String, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.NamespaceOrTypeSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]], System.Collections.Immutable, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a]]:this 36 ( 4.20% of base) : 10409.dasm - System.Net.Security.SslStream:FillHandshakeBufferAsync(System.Net.Security.AsyncReadWriteAdapter,int):System.Threading.Tasks.ValueTask`1[Int32]:this 36 (17.48% of base) : 15922.dasm - System.Number:DecimalToNumber(byref,byref) 35 (11.18% of base) : 17997.dasm - <CreateNestedTypes>d__126:MoveNext():bool:this 34 ( 4.82% of base) : 14621.dasm - BenchmarksGame.KNucleotide_1:Bench(System.IO.Stream,BenchmarksGame.NucleotideHelpers,bool):bool Top method improvements (bytes): -557 (-19.94% of base) : 18190.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceNamedTypeSymbol:MakeDeclaredBases(Roslyn.Utilities.ConsList`1[[Microsoft.CodeAnalysis.CSharp.Symbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]],Microsoft.CodeAnalysis.DiagnosticBag):System.Tuple`2[[Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35],[System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]], System.Collections.Immutable, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a]]:this -525 (-12.80% of base) : 18412.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceMemberContainerTypeSymbol:ComputeInterfaceImplementations(Microsoft.CodeAnalysis.DiagnosticBag,System.Threading.CancellationToken):System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.SynthesizedExplicitImplementationForwardingMethod, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]:this -260 (-19.89% of base) : 18400.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.OverriddenOrHiddenMembersHelpers:FindOverriddenOrHiddenMembersInType(Microsoft.CodeAnalysis.CSharp.Symbol,bool,Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol,Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol,byref,byref,byref) -202 (-16.67% of base) : 17991.dasm - Microsoft.CodeAnalysis.CSharp.CSharpCompilation:GetRuntimeMember(Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol,byref,Microsoft.CodeAnalysis.RuntimeMembers.SignatureComparer`5[[Microsoft.CodeAnalysis.CSharp.Symbols.MethodSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35],[Microsoft.CodeAnalysis.CSharp.Symbols.FieldSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35],[Microsoft.CodeAnalysis.CSharp.Symbols.PropertySymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35],[Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35],[Microsoft.CodeAnalysis.CSharp.Symbols.ParameterSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]],Microsoft.CodeAnalysis.CSharp.Symbols.AssemblySymbol):Microsoft.CodeAnalysis.CSharp.Symbol -201 (-18.91% of base) : 20540.dasm - Microsoft.CodeAnalysis.CSharp.SyntaxTreeSemanticModel:GetDeclaredMember(Microsoft.CodeAnalysis.CSharp.Symbols.NamespaceOrTypeSymbol,Microsoft.CodeAnalysis.Text.TextSpan,System.String):Microsoft.CodeAnalysis.CSharp.Symbol:this -200 (-9.96% of base) : 18417.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceMemberContainerTypeSymbol:CheckMemberNameConflicts(Microsoft.CodeAnalysis.DiagnosticBag):this -159 (-7.87% of base) : 17736.dasm - Microsoft.CodeAnalysis.CSharp.CSharpCompilation:GetDiagnostics(int,bool,Microsoft.CodeAnalysis.DiagnosticBag,System.Threading.CancellationToken):this -128 (-7.15% of base) : 18326.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceMemberContainerTypeSymbol:MakeTypeMembers(Microsoft.CodeAnalysis.DiagnosticBag):System.Collections.Generic.Dictionary`2[[System.String, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]], System.Collections.Immutable, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a]]:this -90 (-4.71% of base) : 18182.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceNamedTypeSymbol:PostDecodeWellKnownAttributes(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.CSharpAttributeData, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]],System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Syntax.AttributeSyntax, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]],Microsoft.CodeAnalysis.DiagnosticBag,short,Microsoft.CodeAnalysis.WellKnownAttributeData):this -67 (-3.94% of base) : 18177.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceMemberContainerTypeSymbol:ForceComplete(Microsoft.CodeAnalysis.SourceLocation,System.Threading.CancellationToken):this -59 (-5.13% of base) : 18359.dasm - Microsoft.CodeAnalysis.CSharp.Binder:ValidateParameterNameConflicts(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.TypeParameterSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]],System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.ParameterSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]],Microsoft.CodeAnalysis.DiagnosticBag):this -53 (-8.02% of base) : 20672.dasm - Microsoft.CodeAnalysis.CSharp.Imports:LookupSymbolInUsings(System.Collections.Immutable.ImmutableArray`1[NamespaceOrTypeAndUsingDirective],Microsoft.CodeAnalysis.CSharp.Binder,Microsoft.CodeAnalysis.CSharp.LookupResult,System.String,int,Roslyn.Utilities.ConsList`1[[Microsoft.CodeAnalysis.CSharp.Symbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]],int,bool,byref) -53 (-10.77% of base) : 18280.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.NamespaceOrTypeSymbol:GetSourceTypeMember(System.String,int,ushort,Microsoft.CodeAnalysis.CSharp.CSharpSyntaxNode):Microsoft.CodeAnalysis.CSharp.Symbols.SourceNamedTypeSymbol:this -45 (-8.08% of base) : 18575.dasm - Microsoft.CodeAnalysis.CSharp.ExecutableCodeBinder:ValidateIteratorMethods(Microsoft.CodeAnalysis.DiagnosticBag):this -42 (-7.89% of base) : 16930.dasm - V8.Crypto.BigInteger:fromByteArray(System.Byte[]):this -40 (-4.77% of base) : 17935.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.NamespaceOrTypeSymbol:LookupMetadataType(byref):Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol:this -38 (-2.11% of base) : 17814.dasm - Microsoft.CodeAnalysis.CSharp.MergedNamespaceDeclaration:MakeChildren():System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.MergedNamespaceOrTypeDeclaration, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]:this -38 (-4.87% of base) : 18458.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceMemberMethodSymbol:ForceComplete(Microsoft.CodeAnalysis.SourceLocation,System.Threading.CancellationToken):this -36 (-3.07% of base) : 18222.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceMemberContainerTypeSymbol:MakeAllMembers(Microsoft.CodeAnalysis.DiagnosticBag):System.Collections.Generic.Dictionary`2[[System.String, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]], System.Collections.Immutable, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a]]:this -36 (-6.75% of base) : 18440.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceMemberContainerTypeSymbol:CheckTypeParameterNameConflicts(Microsoft.CodeAnalysis.DiagnosticBag):this Top method regressions (percentages): 17 (36.17% of base) : 22943.dasm - System.Collections.IndexerSetReverse`1[Int32][System.Int32]:Array():System.Int32[]:this 17 (36.17% of base) : 24496.dasm - System.Collections.IndexerSetReverse`1[__Canon][System.__Canon]:Array():System.__Canon[]:this 18 (27.27% of base) : 13842.dasm - System.Collections.IterateFor`1[__Canon][System.__Canon]:Get(System.Collections.Generic.IList`1[__Canon]):System.__Canon:this 15 (26.79% of base) : 13055.dasm - System.Number:UInt32ToDecChars(long,int,int):long 15 (25.86% of base) : 975.dasm - System.Number:UInt32ToDecChars(long,int,int):long 16 (25.81% of base) : 20092.dasm - System.Collections.IndexerSet`1[__Canon][System.__Canon]:Set(System.Collections.Generic.IList`1[__Canon]):System.Collections.Generic.IList`1[__Canon]:this 22 (25.58% of base) : 9613.dasm - System.Xml.XmlLoader:LoadDocSequence(System.Xml.XmlDocument):this 18 (25.35% of base) : 11926.dasm - EMFloatClass:normalize(InternalFPF) 14 (22.95% of base) : 25097.dasm - V8.Richards.Packet:addTo(V8.Richards.Packet):V8.Richards.Packet:this 16 (21.92% of base) : 4954.dasm - System.IO.Compression.DeflateStream:WriteDeflaterOutput():this 10 (20.41% of base) : 27331.dasm - System.Collections.IterateFor`1[Int32][System.Int32]:ImmutableList():int:this 10 (20.41% of base) : 9944.dasm - System.Collections.IterateFor`1[Int32][System.Int32]:ImmutableSortedSet():int:this 76 (20.05% of base) : 4626.dasm - System.Collections.Generic.PriorityQueue`2[__Canon,__Canon][System.__Canon,System.__Canon]:MoveDownCustomComparer(System.ValueTuple`2[__Canon,__Canon],int):this 10 (20.00% of base) : 14834.dasm - System.Collections.IterateFor`1[__Canon][System.__Canon]:ImmutableList():System.__Canon:this 10 (20.00% of base) : 15485.dasm - System.Collections.IterateFor`1[__Canon][System.__Canon]:ImmutableSortedSet():System.__Canon:this 24 (19.05% of base) : 8484.dasm - System.Collections.IterateForEach`1[__Canon][System.__Canon]:ImmutableArray():System.__Canon:this 17 (18.09% of base) : 11992.dasm - Newtonsoft.Json.Utilities.DateTimeUtils:CopyIntToCharArray(System.Char[],int,int,int) 9 (18.00% of base) : 19831.dasm - System.Reflection.Metadata.Ecma335.MetadataSizes:CalculateTableStreamHeaderSize():int:this 16 (17.98% of base) : 4541.dasm - System.Collections.IndexerSetReverse`1[__Canon][System.__Canon]:Span():System.__Canon:this 36 (17.48% of base) : 15922.dasm - System.Number:DecimalToNumber(byref,byref) Top method improvements (percentages): -19 (-28.79% of base) : 18465.dasm - Microsoft.CodeAnalysis.CSharp.MergedTypeDeclaration:get_AnyMemberHasAttributes():bool:this -557 (-19.94% of base) : 18190.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceNamedTypeSymbol:MakeDeclaredBases(Roslyn.Utilities.ConsList`1[[Microsoft.CodeAnalysis.CSharp.Symbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]],Microsoft.CodeAnalysis.DiagnosticBag):System.Tuple`2[[Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35],[System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]], System.Collections.Immutable, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a]]:this -260 (-19.89% of base) : 18400.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.OverriddenOrHiddenMembersHelpers:FindOverriddenOrHiddenMembersInType(Microsoft.CodeAnalysis.CSharp.Symbol,bool,Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol,Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol,byref,byref,byref) -30 (-19.35% of base) : 19588.dasm - Microsoft.Cci.MetadataWriter:MayUseSmallExceptionHeaders(System.Collections.Immutable.ImmutableArray`1[[Microsoft.Cci.ExceptionHandlerRegion, Microsoft.CodeAnalysis, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):bool -201 (-18.91% of base) : 20540.dasm - Microsoft.CodeAnalysis.CSharp.SyntaxTreeSemanticModel:GetDeclaredMember(Microsoft.CodeAnalysis.CSharp.Symbols.NamespaceOrTypeSymbol,Microsoft.CodeAnalysis.Text.TextSpan,System.String):Microsoft.CodeAnalysis.CSharp.Symbol:this -11 (-16.92% of base) : 18912.dasm - Microsoft.CodeAnalysis.CSharp.CodeGen.CodeGenerator:EmitStatements(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.BoundStatement, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -11 (-16.92% of base) : 18800.dasm - Microsoft.CodeAnalysis.CSharp.DataFlowPass:DeclareVariables(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.LocalSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -11 (-16.92% of base) : 18812.dasm - Microsoft.CodeAnalysis.CSharp.DataFlowPass:ReportUnusedVariables(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.LocalFunctionSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -202 (-16.67% of base) : 17991.dasm - Microsoft.CodeAnalysis.CSharp.CSharpCompilation:GetRuntimeMember(Microsoft.CodeAnalysis.CSharp.Symbols.NamedTypeSymbol,byref,Microsoft.CodeAnalysis.RuntimeMembers.SignatureComparer`5[[Microsoft.CodeAnalysis.CSharp.Symbols.MethodSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35],[Microsoft.CodeAnalysis.CSharp.Symbols.FieldSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35],[Microsoft.CodeAnalysis.CSharp.Symbols.PropertySymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35],[Microsoft.CodeAnalysis.CSharp.Symbols.TypeSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35],[Microsoft.CodeAnalysis.CSharp.Symbols.ParameterSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]],Microsoft.CodeAnalysis.CSharp.Symbols.AssemblySymbol):Microsoft.CodeAnalysis.CSharp.Symbol -11 (-16.18% of base) : 20764.dasm - Microsoft.CodeAnalysis.CSharp.AbstractRegionDataFlowPass:MakeSlots(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.ParameterSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -11 (-15.94% of base) : 19532.dasm - Microsoft.Cci.MetadataVisitor:Visit(System.Collections.Immutable.ImmutableArray`1[[Microsoft.Cci.IParameterDefinition, Microsoft.CodeAnalysis, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -11 (-15.71% of base) : 19548.dasm - Microsoft.Cci.MetadataVisitor:Visit(System.Collections.Immutable.ImmutableArray`1[[Microsoft.Cci.ILocalDefinition, Microsoft.CodeAnalysis, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -11 (-15.71% of base) : 19553.dasm - Microsoft.Cci.MetadataVisitor:Visit(System.Collections.Immutable.ImmutableArray`1[[Microsoft.Cci.ExceptionHandlerRegion, Microsoft.CodeAnalysis, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -11 (-15.71% of base) : 19457.dasm - Microsoft.Cci.MetadataVisitor:Visit(System.Collections.Immutable.ImmutableArray`1[[Microsoft.Cci.IParameterTypeInformation, Microsoft.CodeAnalysis, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -11 (-15.71% of base) : 19459.dasm - Microsoft.Cci.MetadataVisitor:Visit(System.Collections.Immutable.ImmutableArray`1[[Microsoft.Cci.ICustomModifier, Microsoft.CodeAnalysis, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -11 (-15.49% of base) : 18811.dasm - Microsoft.CodeAnalysis.CSharp.DataFlowPass:ReportUnusedVariables(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.LocalSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -11 (-15.07% of base) : 18797.dasm - Microsoft.CodeAnalysis.CSharp.DataFlowPass:EnterParameters(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.Symbols.ParameterSymbol, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -11 (-15.07% of base) : 20750.dasm - Microsoft.CodeAnalysis.CSharp.PreciseAbstractFlowPass`1[LocalState][Microsoft.CodeAnalysis.CSharp.DataFlowPass+LocalState]:VisitMultipleLocalDeclarations(Microsoft.CodeAnalysis.CSharp.BoundMultipleLocalDeclarations):Microsoft.CodeAnalysis.CSharp.BoundNode:this -11 (-15.07% of base) : 18768.dasm - Microsoft.CodeAnalysis.CSharp.PreciseAbstractFlowPass`1[LocalState][Microsoft.CodeAnalysis.CSharp.ControlFlowPass+LocalState]:VisitStatements(System.Collections.Immutable.ImmutableArray`1[[Microsoft.CodeAnalysis.CSharp.BoundStatement, Microsoft.CodeAnalysis.CSharp, Version=2.10.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]):this -12 (-13.64% of base) : 18415.dasm - Microsoft.CodeAnalysis.CSharp.Symbols.SourceMemberContainerTypeSymbol:CheckMemberNamesDistinctFromType(Microsoft.CodeAnalysis.DiagnosticBag):this 376 total methods with Code Size differences (153 improved, 223 regressed), 5 unchanged. ``` </details> -------------------------------------------------------------------------------- Additionally, I removed some dead "optimization enabling" code. * Code review feedback: fix one condition
-
由 Bruce Forstall 提交于
* Improve flowgraph xml/dot dumping 1. Decouple it from JitDump 2. Add some documentation, including a useful link to https://sketchviz.com/ 3. Fix DUMP_FLOWGRAPHS Release build 4. Fix some xml dumping issues 5. Replace custom function pattern parsing with CONFIG_METHODSET ".contains" function 6. Make dot format the default (instead of xml) Fixes #43712 * Code review feedback: use `getCalledCount`
-
由 Levi Broderick 提交于
* Avoid temporary array allocations in reflection * Add nullability annotations * Move some lazy property getters out of the hot path * More factoring out common fast paths * Comment cleanup - no functional changes * Moved some function blocks around for clarity - no functional changes * Pass span into native stack byref * Knock max stackalloced ctor parameters back to 4 * Move all CheckConsistency logic inline
-
由 Aaron Robinson 提交于
Since the finalizer thread runs async with the test, we need to atomically decrement the static instance counter.
-
由 Steve MacLean 提交于
-
由 Jeremy Koritzinsky 提交于
* Add support in comhost tooling to embed type libraries. Sdk work will still be needed to enable developers to embed tlbs in their comhosts. * Cleanup. * PR feedback. Update validation to throw specific exception types for specific errors so the SDK can accurately report errors to the user.
-
由 Bruce Forstall 提交于
* Fix some memory attributions This doesn't change the memory stats greatly, overall. * Formatting
-
由 Rob Lindley 提交于
-
-
由 Bruce Forstall 提交于
-
由 Bruce Forstall 提交于
* Remove CSE ifdefs `FEATURE_ANYCSE` and `FEATURE_VALNUM_CSE` are always enabled, and are expected to remain so, so remove the ifdefs. * Formatting
-
由 Alexander Köplinger 提交于
As specified in https://github.com/dotnet/runtime/issues/44654 the minimum iOS/tvOS version we're targeting for .NET 6 is iOS 10. Bump the versions used in our build scripts and RID graph to that and also add iOS 14.
-
由 Marek Safar 提交于
-
由 Marek Safar 提交于
-
由 ws77.cho 提交于
* Add IL Offset and Method Token to stacktrace For easier debugging, if the PDB is not deployed, add the Method Token and IL Offset to the stacktrace. This functionality can be turned on and off by environment setting "COMPlus_ILOffsetToStackTrace" * Use LocalAppContextSwitch and HexConverter Use LocalAppContextSwitch to get environment variable without using static constructor in StackTrace. Also, use HexConverter to get metadata token and il offset without unnecessary complex. * Use AppendFormat instead of HexConverter Use AppendFormat() for formatting of the hex number. * Use switch to activate ILOffset in stacktrace - Change switch name from ILOffsetsToStackTrace to ShowILOffset - Use "Switch.System.Diagnostics.StackTrace.ShowILOffsets" to activate ILOffset in stacktrace - Use "DOTNET_" prefix for environment variable name (DOTNET_ILOffsetToStackTrace) * Use AppContextConfigHelper for get switch value * Add test case for ILOffsetToStackTrace * Remove unused variable * Use RemoteExecutor.Invoke for testing * Update src/libraries/System.Private.CoreLib/src/System/LocalAppContextSwitches.cs Co-authored-by: NNoah Falk <noahfalk@users.noreply.github.com> * TC contents are added * Remove setting code using enviornment variable remove setting code using environment variable and change switch default value to true. * code clean-up. remove unused code * Sort using statements * Skipt test in mono interpreter mode. Related issue : https://github.com/dotnet/runtime/issues/51096Co-authored-by: NNoah Falk <noahfalk@users.noreply.github.com>
-
由 Ankit Jain 提交于
-
由 Viktor Hofer 提交于
* Use nuget standardized properties Requires https://github.com/dotnet/arcade/pull/7212. Helps with the pkgproj to csproj conversion.
-
由 Pavel Savara 提交于
* testing unicode roundtrip * code review feedback * fix Narrow No-Break Space
-
由 dotnet-maestro[bot] 提交于
[main] Update dependencies from dotnet/runtime dotnet/runtime-assets
-
由 Eirik Tsarpalis 提交于
* implement IAsyncEnumerable JsonConverter * Prototype of IAsyncEnumerable deserialize with Stream * Use a Queue + test buffersizes * Avoid 1 item lag * Add support for Serialize * Misc cleanup on test * extend DeserializeAsyncEnumerable test coverage also removes SerializeAsyncEnumerable components * Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IAsyncEnumerableConverterFactory.cs Co-authored-by: NStephen Toub <stoub@microsoft.com> * address feedback * tweak test buffer values * Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IAsyncEnumerableOfTConverter.cs Co-authored-by: NStephen Toub <stoub@microsoft.com> * Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/Converters/Collection/IAsyncEnumerableOfTConverter.cs Co-authored-by: NStephen Toub <stoub@microsoft.com> * address feedback * increase delayInterval in serialization tests * address feedback * address feedback * add test on exceptional IAsyncDisposable disposal * address feedback * Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/ReadAsyncState.cs Co-authored-by: NLayomi Akinrinade <layomia@gmail.com> * Update src/libraries/System.Text.Json/src/System/Text/Json/Serialization/WriteStack.cs Co-authored-by: NLayomi Akinrinade <layomia@gmail.com> * fix build and remove dead code * address feedback * Revert unneeded JsonClassInfo.ElementType workaround * remove state allocation on async deserialization methods * remove tooling artifacts * address feedback * reset AsyncEnumeratorIsPendingCompletion field Co-authored-by: NSteve Harter <steveharter@users.noreply.github.com> Co-authored-by: NStephen Toub <stoub@microsoft.com> Co-authored-by: NLayomi Akinrinade <layomia@gmail.com>
-
- 12 4月, 2021 5 次提交
-
-
由 Jan Kotas 提交于
-
由 Pavel Savara 提交于
* make emsdk installation instructions clear on which version need to be installed * whitespace * Radek's feedback
-
由 Alexander Köplinger 提交于
-
由 Thays Grazia 提交于
* Print call stack when profile is enabled in a mono_llvm_cpp_throw_exception (void) this was asked by @jeromelaban * Update src/mono/mono/mini/llvm-runtime.cpp Co-authored-by: NJérôme Laban <jlaban@gmail.com> * As suggested by @jeromelaban Co-authored-by: NJérôme Laban <jlaban@gmail.com>
-
由 Steve Pfister 提交于
We previously only used this naming on platforms that already had coreclr as an option. Using Mono in the name all the time will make what runtime you're dealing with less ambiguous. Fixes #49718
-