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
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsRegressionBase: Marked as regression because the compare was 5% greater than the baseline, and the value was not too small.
IsRegressionChecked: Marked as regression because the three check build points were 0.05 greater than the baseline.
IsRegressionWindowed: Marked as regression because 33.735512692343335 > 32.26736005931942.
IsChangePoint: Marked as a change because one of 1/15/2023 4:08:29 PM, 1/24/2023 6:33:57 AM falls between 1/15/2023 4:08:29 PM and 1/24/2023 6:33:57 AM.
IsRegressionStdDev: Marked as regression because -26.878842632971974 (T) = (0 -34.935854550668715) / Math.Sqrt((0.12197983608550336 / (15)) + (0.7903162659861526 / (54))) is less than -1.9960083540247138 = MathNet.Numerics.Distributions.StudentT.InvCDF(0, 1, (15) + (54) - 2, .025) and -0.13133752397716875 = (30.880134186527474 - 34.935854550668715) / 30.880134186527474 is less than -0.05.
IsImprovementBase: Marked as not an improvement because the compare was not 5% less than the baseline, or the value was too small.
IsChangeEdgeDetector: Marked not as a regression because Edge Detector said so.
```### Baseline Jit Disasm
```assembly
; System.Buffers.Text.Tests.Utf8FormatterTests.FormatterInt64(Int64)
push rdi
push rsi
push rbx
sub rsp,40
vxorps xmm4,xmm4,xmm4
vmovdqu xmmword ptr [rsp+28],xmm4
xor eax,eax
mov [rsp+38],rax
mov rax,[rcx+8]
test rax,rax
je near ptr M00_L11
lea rsi,[rax+10]
mov edi,[rax+8]
M00_L00:
cmp rdx,0A
jae short M00_L03
test edi,edi
jne short M00_L01
xor edx,edx
mov [rsp+38],edx
jmp short M00_L02
nop dword ptr [rax]
M00_L01:
add edx,30
mov [rsi],dl
mov dword ptr [rsp+38],1
mov edx,1
M00_L02:
mov eax,edx
jmp near ptr M00_L10
M00_L03:
mov rbx,rdx
mov rcx,rsi
mov esi,edi
test rbx,rbx
jge near ptr M00_L07
neg rbx
mov rax,rbx
or rax,1
lzcnt rax,rax
xor eax,3F
cdqe
mov rdx,7FFC88098EB0
movzx r8d,byte ptr [rax+rdx]
lea eax,[r8*8]
mov rdx,7FFC8809EFC8
cmp rbx,[rax+rdx]
setb al
movzx eax,al
sub r8d,eax
cmp r8d,esi
jl short M00_L04
xor ecx,ecx
mov [rsp+38],ecx
jmp near ptr M00_L09
M00_L04:
test esi,esi
je near ptr M00_L13
mov byte ptr [rcx],2D
lea eax,[r8+1]
mov [rsp+38],eax
mov eax,r8d
inc rax
mov edx,esi
cmp rax,rdx
ja near ptr M00_L12
inc rcx
mov rdx,rbx
lea r9d,[r8-1]
test r9d,r9d
jle short M00_L06
M00_L05:
lea r10,[rdx+30]
mov r11,0CCCCCCCCCCCCCCCD
mov rax,rdx
mul r11
shr rdx,3
cmp r9d,r8d
jae near ptr M00_L13
mov eax,r9d
lea r11,[rdx+rdx*4]
add r11,r11
sub r10,r11
mov [rcx+rax],r10b
dec r9d
test r9d,r9d
jg short M00_L05
M00_L06:
test r8d,r8d
je short M00_L13
lea rax,[rdx+30]
mov [rcx],al
mov ecx,1
jmp short M00_L09
M00_L07:
mov rdi,rcx
mov rcx,rbx
call qword ptr [7FFC2961B4E0]; System.Buffers.Text.FormattingHelpers.CountDigits(UInt64)
cmp eax,esi
jle short M00_L08
xor eax,eax
mov [rsp+38],eax
xor ecx,ecx
jmp short M00_L09
M00_L08:
mov [rsp+38],eax
cmp eax,esi
ja short M00_L12
mov rcx,rbx
mov [rsp+28],rdi
mov [rsp+30],eax
lea rdx,[rsp+28]
call qword ptr [7FFC2961B588]; System.Buffers.Text.FormattingHelpers.WriteDigits(UInt64, System.Span`1<Byte>)
mov ecx,1
M00_L09:
mov eax,ecx
M00_L10:
add rsp,40
pop rbx
pop rsi
pop rdi
ret
M00_L11:
xor esi,esi
xor edi,edi
jmp near ptr M00_L00
M00_L12:
call qword ptr [7FFC293EB4E0]
int 3
M00_L13:
call CORINFO_HELP_RNGCHKFAIL
int 3
; Total bytes of code 410
; System.Buffers.Text.FormattingHelpers.CountDigits(UInt64)movrax,rcxorrax,1lzcntrax,raxxoreax,3Fcdqemovrdx,7FFC88098EB0movzxeax,byte ptr [rax+rdx]leaedx,[rax*8]movr8,7FFC8809EFC8cmprcx,[rdx+r8]setbdlmovzxedx,dlsubeax,edxret; Total bytes of code 61
; System.Buffers.Text.FormattingHelpers.WriteDigits(UInt64, System.Span`1<Byte>)subrsp,28movr8,[rdx]movr9d,[rdx+8]lear10d,[r9-1]testr10d,r10djle short M02_L01M02_L00:lear11,[rcx+30]movrdx,0CCCCCCCCCCCCCCCDmovrax,rcxmulrdxmovrcx,rdxshrrcx,3cmpr10d,r9djae short M02_L02moveax,r10dleardx,[rcx+rcx*4]addrdx,rdxsubr11,rdxmov[r8+rax],r11bdecr10dtestr10d,r10djg short M02_L00M02_L01:testr9d,r9dje short M02_L02learax,[rcx+30]mov[r8],aladdrsp,28retM02_L02:call CORINFO_HELP_RNGCHKFAILint3; Total bytes of code 100
Compare Jit Disasm
; System.Buffers.Text.Tests.Utf8FormatterTests.FormatterInt64(Int64)pushrdipushrsipushrbxsubrsp,70vzeroupperxoreax,eaxmov[rsp+28],raxvxorpsxmm4,xmm4,xmm4vmovdqa xmmword ptr [rsp+30],xmm4vmovdqa xmmword ptr [rsp+40],xmm4vmovdqa xmmword ptr [rsp+50],xmm4vmovdqa xmmword ptr [rsp+60],xmm4movrax,[rcx+8]testrax,raxje near ptr M00_L11learsi,[rax+10]movedi,[rax+8]M00_L00:cmprdx,0Ajae short M00_L03testedi,edijne short M00_L01xoredx,edxmov[rsp+68],edxjmp short M00_L02M00_L01:addedx,30mov[rsi],dlmov dword ptr [rsp+68],1movedx,1M00_L02:moveax,edxjmp near ptr M00_L10M00_L03:movrbx,rdxmovrcx,rsimovr8d,editestrbx,rbxjge near ptr M00_L07negrbxmovrax,rbxorrax,1lzcntrax,raxxoreax,3Fcdqemovrdx,7FFD333C8130movzxr9d,byte ptr [rax+rdx]moveax,r9dmovrdx,7FFD333CEAC8cmprbx,[rdx+rax*8]setbalmovzxeax,alsubr9d,eaxcmpr9d,r8djl short M00_L04xorr8d,r8dmov[rsp+68],r8djmp near ptr M00_L09M00_L04:testr8d,r8dje near ptr M00_L13mov byte ptr [rcx],2Dleaeax,[r9+1]mov[rsp+68],eaxmoveax,r9dincraxmovedx,r8dcmprax,rdxja near ptr M00_L12incrcxmovrdx,rbxlear8d,[r9-1]testr8d,r8djle short M00_L06M00_L05:lear10,[rdx+30]movr11,0CCCCCCCCCCCCCCCDmovrax,rdxmulr11shrrdx,3cmpr8d,r9djae near ptr M00_L13moveax,r8dlear11,[rdx+rdx*4]addr11,r11subr10,r11mov[rcx+rax],r10bdecr8dtestr8d,r8djg short M00_L05M00_L06:testr9d,r9dje near ptr M00_L13addrdx,30mov[rcx],dlmovr8d,1jmp near ptr M00_L09M00_L07:mov[rsp+58],rcxmov[rsp+60],r8dvxorpsxmm0,xmm0,xmm0vmovdqu xmmword ptr [rsp+38],xmm0learcx,[rsp+38]movrdx,7FFD333C8130movr8d,40call qword ptr [7FFCD44D79D8]; System.ReadOnlySpan`1[[System.Byte, System.Private.CoreLib]]..ctor(Void*, Int32)movrsi,[rsp+38]movrcx,rbxcall qword ptr [7FFCD44B3198]; System.Numerics.BitOperations.Log2(UInt64)movsxdrcx,eaxmovzxr9d,byte ptr [rsi+rcx]movecx,r9dmovrdx,7FFD333CEAC8cmprbx,[rdx+rcx*8]setbclmovzxecx,clsubr9d,ecxcmpr9d,[rsp+60]jle short M00_L08xorr9d,r9dmov[rsp+68],r9dxorr8d,r8djmp short M00_L09M00_L08:mov[rsp+68],r9dlearcx,[rsp+58]leardx,[rsp+48]xorr8d,r8dcall qword ptr [7FFCD459D720]; System.Span`1[[System.Byte, System.Private.CoreLib]].Slice(Int32, Int32)movrcx,rbxmovrdx,[rsp+48]mov[rsp+28],rdxmovedx,[rsp+50]mov[rsp+30],edxleardx,[rsp+28]call qword ptr [7FFCD495B5A0]; System.Buffers.Text.FormattingHelpers.WriteDigits(UInt64, System.Span`1<Byte>)movr8d,1M00_L09:moveax,r8dM00_L10:addrsp,70poprbxpoprsipoprdiretM00_L11:xoresi,esixoredi,edijmp near ptr M00_L00M00_L12:call qword ptr [7FFCD472B4E0]int3M00_L13:call CORINFO_HELP_RNGCHKFAILint3; Total bytes of code 552
; System.ReadOnlySpan`1[[System.Byte, System.Private.CoreLib]]..ctor(Void*, Int32)subrsp,28testr8d,r8djl short M01_L00mov[rcx],rdxmov[rcx+8],r8daddrsp,28retM01_L00:call qword ptr [7FFCD472B4E0]int3; Total bytes of code 28
; System.Numerics.BitOperations.Log2(UInt64)orrcx,1xoreax,eaxlzcntrax,rcxxoreax,3Fret; Total bytes of code 15
; System.Span`1[[System.Byte, System.Private.CoreLib]].Slice(Int32, Int32)subrsp,28moveax,r8dmovr8d,r9daddr8,raxmovr10d,[rcx+8]cmpr8,r10ja short M03_L00addrax,[rcx]mov[rdx],raxmov[rdx+8],r9dmovrax,rdxaddrsp,28retM03_L00:call qword ptr [7FFCD472B4E0]int3; Total bytes of code 47
; System.Buffers.Text.FormattingHelpers.WriteDigits(UInt64, System.Span`1<Byte>)subrsp,28movr8,[rdx]movr9d,[rdx+8]lear10d,[r9-1]testr10d,r10djle short M04_L01M04_L00:lear11,[rcx+30]movrdx,0CCCCCCCCCCCCCCCDmovrax,rcxmulrdxmovrcx,rdxshrrcx,3cmpr10d,r9djae short M04_L02moveax,r10dleardx,[rcx+rcx*4]addrdx,rdxsubr11,rdxmov[r8+rax],r11bdecr10dtestr10d,r10djg short M04_L00M04_L01:testr9d,r9dje short M04_L02learax,[rcx+30]mov[r8],aladdrsp,28retM04_L02:call CORINFO_HELP_RNGCHKFAILint3; Total bytes of code 100
Run Information
Regressions in System.Buffers.Text.Tests.Utf8FormatterTests
Test Report
Repro
Payloads
Baseline
Compare
Histogram
System.Buffers.Text.Tests.Utf8FormatterTests.FormatterInt64(value: 9223372036854775807)
Description of detection logic
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: