WithLeapSeconds

Created Diff never expires
32 removals
Lines
Total
Removed
Words
Total
Removed
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
93 lines
18 additions
Lines
Total
Added
Words
Total
Added
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
80 lines
; Assembly listing for method System.DateTime:.ctor(int,int,int,int,int,int,System.Globalization.Calendar):this (FullOpts)
; Assembly listing for method System.DateTime:.ctor(int,int,int,int,int,int,System.Globalization.Calendar):this (FullOpts)
; Emitting BLENDED_CODE for X64 with AVX - Windows
; Emitting BLENDED_CODE for X64 with AVX - Windows
; FullOpts code
; FullOpts code
; optimized code
; optimized code
; rbp based frame
; rbp based frame
; partially interruptible
; partially interruptible
; No PGO data
; No PGO data
; 0 inlinees with PGO data; 3 single block inlinees; 3 inlinees without PGO data
; 0 inlinees with PGO data; 2 single block inlinees; 1 inlinees without PGO data
; Final local variable assignments
; Final local variable assignments
;
;
; V00 this [V00,T00] ( 5, 3.50) byref -> rbx this single-def
; V00 this [V00,T00] ( 4, 3 ) byref -> rbx this single-def
; V01 arg1 [V01,T01] ( 4, 3 ) int -> rdx single-def
; V01 arg1 [V01,T01] ( 4, 3 ) int -> rdx single-def
; V02 arg2 [V02,T02] ( 4, 3 ) int -> r8 single-def
; V02 arg2 [V02,T02] ( 4, 3 ) int -> r8 single-def
; V03 arg3 [V03,T03] ( 4, 3 ) int -> r9 single-def
; V03 arg3 [V03,T03] ( 4, 3 ) int -> r9 single-def
; V04 arg4 [V04,T06] ( 2, 1 ) int -> [rbp+0x30] single-def
; V04 arg4 [V04,T06] ( 2, 1 ) int -> [rbp+0x30] single-def
; V05 arg5 [V05,T07] ( 2, 1 ) int -> [rbp+0x38] single-def
; V05 arg5 [V05,T07] ( 2, 1 ) int -> [rbp+0x38] single-def
; V06 arg6 [V06,T05] ( 2, 1.50) int -> rax single-def
; V06 arg6 [V06,T05] ( 2, 1.50) int -> rax single-def
; V07 arg7 [V07,T04] ( 5, 3 ) ref -> rcx class-hnd single-def <System.Globalization.Calendar>
; V07 arg7 [V07,T04] ( 4, 2.50) ref -> rcx class-hnd single-def <System.Globalization.Calendar>
;* V08 loc0 [V08 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op <System.DateTime>
;* V08 loc0 [V08 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op <System.DateTime>
; V09 OutArgs [V09 ] ( 1, 1 ) struct (64) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V09 OutArgs [V09 ] ( 1, 1 ) struct (64) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
;* V10 tmp1 [V10 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.DateTime>
; V10 tmp1 [V10,T08] ( 2, 1 ) long -> rax "field V08._dateData (fldOffset=0x0)" P-INDEP
;* V11 tmp2 [V11 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline stloc first use temp" <System.DateTime>
; V12 tmp3 [V12,T08] ( 2, 1 ) long -> rax "field V08._dateData (fldOffset=0x0)" P-INDEP
; V13 tmp4 [V13,T09] ( 2, 1 ) long -> rcx "field V10._dateData (fldOffset=0x0)" P-INDEP
; V14 tmp5 [V14,T10] ( 2, 1 ) long -> rax "field V11._dateData (fldOffset=0x0)" P-INDEP
;
;
; Lcl frame size = 72
; Lcl frame size = 72


G_M28801_IG01:
G_M28801_IG01:
push rbp
push rbp
push rbx
push rbx
sub rsp, 72
sub rsp, 72
lea rbp, [rsp+0x50]
lea rbp, [rsp+0x50]
mov rbx, rcx
mov rbx, rcx
mov eax, dword ptr [rbp+0x40]
mov eax, dword ptr [rbp+0x40]
mov rcx, gword ptr [rbp+0x48]
mov rcx, gword ptr [rbp+0x48]
;; size=21 bbWeight=1 PerfScore 5.00
;; size=21 bbWeight=1 PerfScore 5.00
G_M28801_IG02:
G_M28801_IG02:
test rcx, rcx
test rcx, rcx
je G_M28801_IG06
je SHORT G_M28801_IG06
cmp eax, 60
cmp eax, 60
jne SHORT G_M28801_IG04
jne SHORT G_M28801_IG04
;; size=14 bbWeight=1 PerfScore 2.50
;; size=10 bbWeight=1 PerfScore 2.50
G_M28801_IG03:
G_M28801_IG03:
mov eax, dword ptr [rbp+0x30]
mov eax, dword ptr [rbp+0x30]
mov dword ptr [rsp+0x20], eax
mov dword ptr [rsp+0x20], eax
mov r10d, dword ptr [rbp+0x38]
mov r10d, dword ptr [rbp+0x38]
mov dword ptr [rsp+0x28], r10d
mov dword ptr [rsp+0x28], r10d
mov dword ptr [rsp+0x30], 59
call [System.DateTime:WithLeapSecond(System.Globalization.Calendar,int,int,int,int,int):ulong]
xor eax, eax
mov qword ptr [rbx], rax
mov dword ptr [rsp+0x38], eax
mov rax, qword ptr [rcx]
mov rax, qword ptr [rax+0x68]
call [rax+0x28]System.Globalization.Calendar:ToDateTime(int,int,int,int,int,int,int):System.DateTime:this
mov rcx, 0xD1FFAB1E
and rcx, rax
mov qword ptr [rbx], rcx
mov rcx, rbx
call [System.DateTime:ValidateLeapSecond():this]
jmp SHORT G_M28801_IG05
jmp SHORT G_M28801_IG05
;; size=67 bbWeight=0.50 PerfScore 10.00
;; size=27 bbWeight=0.50 PerfScore 5.00
G_M28801_IG04:
G_M28801_IG04:
mov r10d, dword ptr [rbp+0x30]
mov r10d, dword ptr [rbp+0x30]
mov dword ptr [rsp+0x20], r10d
mov dword ptr [rsp+0x20], r10d
mov r10d, dword ptr [rbp+0x38]
mov r10d, dword ptr [rbp+0x38]
mov dword ptr [rsp+0x28], r10d
mov dword ptr [rsp+0x28], r10d
mov dword ptr [rsp+0x30], eax
mov dword ptr [rsp+0x30], eax
xor eax, eax
xor eax, eax
mov dword ptr [rsp+0x38], eax
mov dword ptr [rsp+0x38], eax
mov rax, qword ptr [rcx]
mov rax, qword ptr [rcx]
mov rax, qword ptr [rax+0x68]
mov rax, qword ptr [rax+0x68]
call [rax+0x28]System.Globalization.Calendar:ToDateTime(int,int,int,int,int,int,int):System.DateTime:this
call [rax+0x28]System.Globalization.Calendar:ToDateTime(int,int,int,int,int,int,int):System.DateTime:this
mov rcx, 0xD1FFAB1E
mov rcx, 0xD1FFAB1E
and rcx, rax
and rcx, rax
mov qword ptr [rbx], rcx
mov qword ptr [rbx], rcx
;; size=54 bbWeight=0.50 PerfScore 7.38
;; size=54 bbWeight=0.50 PerfScore 7.38
G_M28801_IG05:
G_M28801_IG05:
add rsp, 72
add rsp, 72
pop rbx
pop rbx
pop rbp
pop rbp
ret
ret
;; size=7 bbWeight=1 PerfScore 2.25
;; size=7 bbWeight=1 PerfScore 2.25
G_M28801_IG06:
G_M28801_IG06:
mov ecx, 0x1FC1
mov ecx, 0x1FC1
mov rdx, 0xD1FFAB1E
mov rdx, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
call CORINFO_HELP_STRCNS
mov rcx, rax
mov rcx, rax
call [System.ArgumentNullException:Throw(System.String)]
call [System.ArgumentNullException:Throw(System.String)]
int3
int3
;; size=30 bbWeight=0 PerfScore 0.00
;; size=30 bbWeight=0 PerfScore 0.00


; Total bytes of code 193, prolog size 11, PerfScore 27.12, instruction count 50, allocated bytes for code 193 (MethodHash=1e2f8f7e) for method System.DateTime:.ctor(int,int,int,int,int,int,System.Globalization.Calendar):this (FullOpts)
; Total bytes of code 149, prolog size 11, PerfScore 22.12, instruction count 41, allocated bytes for code 149 (MethodHash=1e2f8f7e) for method System.DateTime:.ctor(int,int,int,int,int,int,System.Globalization.Calendar):this (FullOpts)