You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
; System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf()pushebpmovebp,esppushesimovesi,ecxmovecx,[esi+18]moveax,[ecx]moveax,[eax+2C]call dword ptr [eax+18]movecx,eaxmovedx,[esi+4]moveax,[esi+14]pusheaxmoveax,[esi+1C]pusheaxcmp[ecx],ecxcall System.Globalization.CompareInfo.IsSuffix(System.String, System.String, System.Globalization.CompareOptions)popesipopebpret; Total bytes of code 40
; System.Globalization.CompareInfo.IsSuffix(System.String, System.String, System.Globalization.CompareOptions)pushebpmovebp,esppushedipushesimoveax,[ebp+0C]testedx,edxje short M01_L00testeax,eaxje short M01_L01leaesi,[edx+8]movedx,[edx+4]leaedi,[eax+8]moveax,[eax+4]pushedxpushesipusheaxpushedimovedx,[ebp+8]call System.Globalization.CompareInfo.IsSuffix(System.ReadOnlySpan`1<Char>, System.ReadOnlySpan`1<Char>, System.Globalization.CompareOptions)popesipopedipopebpret8M01_L00:movecx,26call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3M01_L01:movecx,59call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3; Total bytes of code 68
Compare Jit Disasm
; System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf()pushebpmovebp,esppushesimovesi,ecxmovecx,[esi+18]moveax,[ecx]moveax,[eax+2C]call dword ptr [eax+18]movecx,eaxmovedx,[esi+4]moveax,[esi+14]pusheaxmoveax,[esi+1C]pusheaxcmp[ecx],ecxcall System.Globalization.CompareInfo.IsSuffix(System.String, System.String, System.Globalization.CompareOptions)popesipopebpret; Total bytes of code 40
; System.Globalization.CompareInfo.IsSuffix(System.String, System.String, System.Globalization.CompareOptions)pushebpmovebp,esppushedipushesimoveax,[ebp+0C]testedx,edxje short M01_L00testeax,eaxje short M01_L01leaesi,[edx+8]movedx,[edx+4]leaedi,[eax+8]moveax,[eax+4]pushedxpushesipusheaxpushedimovedx,[ebp+8]call System.Globalization.CompareInfo.IsSuffix(System.ReadOnlySpan`1<Char>, System.ReadOnlySpan`1<Char>, System.Globalization.CompareOptions)popesipopedipopebpret8M01_L00:movecx,26call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3M01_L01:movecx,59call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3; Total bytes of code 68
; System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar()pushebpmovebp,esppushesimovesi,ecxmovecx,[esi+18]moveax,[ecx]moveax,[eax+2C]call dword ptr [eax+18]movecx,eaxmovedx,[esi+4]moveax,[esi+0C]pusheaxmoveax,[esi+1C]pusheaxcmp[ecx],ecxcall System.Globalization.CompareInfo.IsSuffix(System.String, System.String, System.Globalization.CompareOptions)popesipopebpret; Total bytes of code 40
; System.Globalization.CompareInfo.IsSuffix(System.String, System.String, System.Globalization.CompareOptions)pushebpmovebp,esppushedipushesimoveax,[ebp+0C]testedx,edxje short M01_L00testeax,eaxje short M01_L01leaesi,[edx+8]movedx,[edx+4]leaedi,[eax+8]moveax,[eax+4]pushedxpushesipusheaxpushedimovedx,[ebp+8]call System.Globalization.CompareInfo.IsSuffix(System.ReadOnlySpan`1<Char>, System.ReadOnlySpan`1<Char>, System.Globalization.CompareOptions)popesipopedipopebpret8M01_L00:movecx,26call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3M01_L01:movecx,59call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3; Total bytes of code 68
Compare Jit Disasm
; System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar()pushebpmovebp,esppushesimovesi,ecxmovecx,[esi+18]moveax,[ecx]moveax,[eax+2C]call dword ptr [eax+18]movecx,eaxmovedx,[esi+4]moveax,[esi+0C]pusheaxmoveax,[esi+1C]pusheaxcmp[ecx],ecxcall System.Globalization.CompareInfo.IsSuffix(System.String, System.String, System.Globalization.CompareOptions)popesipopebpret; Total bytes of code 40
; System.Globalization.CompareInfo.IsSuffix(System.String, System.String, System.Globalization.CompareOptions)pushebpmovebp,esppushedipushesimoveax,[ebp+0C]testedx,edxje short M01_L00testeax,eaxje short M01_L01leaesi,[edx+8]movedx,[edx+4]leaedi,[eax+8]moveax,[eax+4]pushedxpushesipusheaxpushedimovedx,[ebp+8]call System.Globalization.CompareInfo.IsSuffix(System.ReadOnlySpan`1<Char>, System.ReadOnlySpan`1<Char>, System.Globalization.CompareOptions)popesipopedipopebpret8M01_L00:movecx,26call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3M01_L01:movecx,59call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3; Total bytes of code 68
; System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf()pushebpmovebp,esppushesimovesi,ecxmovecx,[esi+18]moveax,[ecx]moveax,[eax+2C]call dword ptr [eax+18]movecx,eaxmovedx,[esi+4]moveax,[esi+10]pusheaxmoveax,[esi+1C]pusheaxcmp[ecx],ecxcall System.Globalization.CompareInfo.IsPrefix(System.String, System.String, System.Globalization.CompareOptions)popesipopebpret; Total bytes of code 40
; System.Globalization.CompareInfo.IsPrefix(System.String, System.String, System.Globalization.CompareOptions)pushebpmovebp,esppushedipushesimoveax,[ebp+0C]testedx,edxje short M01_L00testeax,eaxje short M01_L01leaesi,[edx+8]movedx,[edx+4]leaedi,[eax+8]moveax,[eax+4]pushedxpushesipusheaxpushedimovedx,[ebp+8]call System.Globalization.CompareInfo.IsPrefix(System.ReadOnlySpan`1<Char>, System.ReadOnlySpan`1<Char>, System.Globalization.CompareOptions)popesipopedipopebpret8M01_L00:movecx,26call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3M01_L01:movecx,58call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3; Total bytes of code 68
Compare Jit Disasm
; System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf()pushebpmovebp,esppushesimovesi,ecxmovecx,[esi+18]moveax,[ecx]moveax,[eax+2C]call dword ptr [eax+18]movecx,eaxmovedx,[esi+4]moveax,[esi+10]pusheaxmoveax,[esi+1C]pusheaxcmp[ecx],ecxcall System.Globalization.CompareInfo.IsPrefix(System.String, System.String, System.Globalization.CompareOptions)popesipopebpret; Total bytes of code 40
; System.Globalization.CompareInfo.IsPrefix(System.String, System.String, System.Globalization.CompareOptions)pushebpmovebp,esppushedipushesimoveax,[ebp+0C]testedx,edxje short M01_L00testeax,eaxje short M01_L01leaesi,[edx+8]movedx,[edx+4]leaedi,[eax+8]moveax,[eax+4]pushedxpushesipusheaxpushedimovedx,[ebp+8]call System.Globalization.CompareInfo.IsPrefix(System.ReadOnlySpan`1<Char>, System.ReadOnlySpan`1<Char>, System.Globalization.CompareOptions)popesipopedipopebpret8M01_L00:movecx,26call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3M01_L01:movecx,58call System.ThrowHelper.ThrowArgumentNullException(System.ExceptionArgument)int3; Total bytes of code 68
…0108.1 (#3722)
Microsoft.Extensions.Logging , Microsoft.NET.ILLink , Microsoft.NET.ILLink.Tasks , System.Threading.Channels
From Version 9.0.0-alpha.1.24057.2 -> To Version 9.0.0-alpha.1.24058.1
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Run Information
Improvemnts in System.Globalization.Tests.StringSearch
Related Issue on x64 ubuntu
[Perf 19%] System.Globalization.Tests.StringSearch (8)
Related Issue on x64 ubuntu
[Perf 21%] System.Globalization.Tests.StringSearch (7)
Related Issue on x64 ubuntu
[Perf 21%] System.Globalization.Tests.StringSearch (9)
Related Issue on x64 Windows
[Perf 23%] System.Globalization.Tests.StringSearch (16)
Historical Data in Reporting System
Repro
.
Payloads
Baseline
Compare
Histogram
System.Globalization.Tests.StringSearch.IsSuffix_SecondHalf(Options: (en-US, OrdinalIgnoreCase, False))
Baseline Jit Disasm
Compare Jit Disasm
System.Globalization.Tests.StringSearch.IsSuffix_DifferentLastChar(Options: (en-US, OrdinalIgnoreCase, False))
Baseline Jit Disasm
Compare Jit Disasm
System.Globalization.Tests.StringSearch.IsPrefix_FirstHalf(Options: (en-US, OrdinalIgnoreCase, False))
Baseline Jit Disasm
Compare Jit Disasm
Docs
Profiling workflow for dotnet/runtime repository
Benchmarking workflow for dotnet/runtime repository
The text was updated successfully, but these errors were encountered: