Untitled Diff

Created Diff never expires
42 removals
45 lines
35 additions
42 lines
G_M47624_IG01:
G_M47624_IG01:
push rdi
push rsi
push rsi
sub rsp, 64
sub rsp, 56
vzeroupper
vzeroupper
vxorps xmm4, xmm4
xor eax, eax
vmovdqa xmmword ptr [rsp+20H], xmm4
mov qword ptr [rsp+28H], rax
vmovdqa xmmword ptr [rsp+30H], xmm4
;; size=16 bbWeight=1 PerfScore 4.50
;; size=24 bbWeight=1 PerfScore 6.58
G_M47624_IG02:
G_M47624_IG02:
mov rsi, rdx
mov rsi, rdx
vucomisd xmm0, xmm0
vucomisd xmm0, xmm0
jp SHORT G_M47624_IG04
jp SHORT G_M47624_IG04
;; size=9 bbWeight=1 PerfScore 3.25
;; size=9 bbWeight=1 PerfScore 3.25
G_M47624_IG03:
G_M47624_IG03:
vxorps xmm1, xmm1
vxorps xmm1, xmm1
vmovdqu xmmword ptr [rsp+20H], xmm1
vmovdqu xmmword ptr [rsp+28H], xmm1
lea rcx, [rsp+20H]
lea rcx, [rsp+28H]
vmovaps xmm1, xmm0
vmovaps xmm1, xmm0
call [System.Numerics.BigInteger:.ctor(double):this]
call [System.Numerics.BigInteger:.ctor(double):this]
mov rcx, gword ptr [rsp+20H]
mov rdx, gword ptr [rsp+28H]
mov gword ptr [rsp+30H], rcx
mov edi, dword ptr [rsp+30H]
mov ecx, dword ptr [rsp+28H]
mov dword ptr [rsp+38H], ecx
jmp SHORT G_M47624_IG05
jmp SHORT G_M47624_IG05
;; size=45 bbWeight=0.50 PerfScore 5.54
;; size=36 bbWeight=0.50 PerfScore 4.54
G_M47624_IG04:
G_M47624_IG04:
lea rcx, [rsp+30H]
xor rdx, rdx
call [System.Numerics.BigInteger:get_Zero():System.Numerics.BigInteger]
xor edi, edi
;; size=11 bbWeight=0.50 PerfScore 1.75
;; size=4 bbWeight=0.50 PerfScore 0.25
G_M47624_IG05:
G_M47624_IG05:
mov rdx, gword ptr [rsp+30H]
mov rcx, rsi
mov rcx, rsi
call CORINFO_HELP_CHECKED_ASSIGN_REF
call CORINFO_HELP_CHECKED_ASSIGN_REF
mov eax, dword ptr [rsp+38H]
mov dword ptr [rsi+08H], edi
mov dword ptr [rsi+08H], eax
mov eax, 1
mov eax, 1
;; size=25 bbWeight=1 PerfScore 4.50
;; size=16 bbWeight=1 PerfScore 2.50
G_M47624_IG06:
G_M47624_IG06:
add rsp, 64
add rsp, 56
pop rsi
pop rsi
pop rdi
ret
ret
;; size=6 bbWeight=1 PerfScore 1.75
;; size=7 bbWeight=1 PerfScore 2.25


; Total bytes of code 120, prolog size 24, PerfScore 35.38, instruction count 30, allocated bytes for code 120 (MethodHash=a4d345f7) for method System.Numerics.BigInteger:TryConvertFromSaturating[double](double,byref):bool
; Total bytes of code 88, prolog size 16, PerfScore 26.09, instruction count 27, allocated bytes for code 88 (MethodHash=a4d345f7) for method System.Numerics.BigInteger:TryConvertFromSaturating[double](double,byref):bool
; ============================================================
; ============================================================