Diff
checker
Text
Text
Images
Documents
Excel
Folders
Legal
Features
Desktop
Pricing
Sign in
Download Diffchecker Desktop
Compare text
Find the difference between two text files
Real-time editor
Hide unchanged lines
Disable line wrap
Layout
Split
Unified
Diff precision
Word
Character
Syntax highlighting
Choose syntax
Ignore
Transform text
Go to first change
Edit input
Diffchecker Desktop
The most secure way to run Diffchecker. Get the Diffchecker Desktop app: your diffs never leave your computer!
Get Desktop
Untitled Diff
Created
3 years ago
Diff never expires
Clear
Export
Share
Explain
32 removals
Lines
Total
Removed
Words
Total
Removed
To continue using this feature, upgrade to
Diff
checker
Pro
View Pricing
234 lines
Copy
51 additions
Lines
Total
Added
Words
Total
Added
To continue using this feature, upgrade to
Diff
checker
Pro
View Pricing
253 lines
Copy
; Assembly listing for method System.Xml.Schema.XmlBaseConverter:StringToDate(System.String):System.DateTime
; Assembly listing for method System.Xml.Schema.XmlBaseConverter:StringToDate(System.String):System.DateTime
G_M20794_IG01:
G_M20794_IG01:
push r14
push r14
push rdi
push rdi
push rsi
push rsi
push rbp
push rbp
push rbx
push rbx
sub rsp, 224
sub rsp, 224
vzeroupper
vzeroupper
vxorps xmm4, xmm4
vxorps xmm4, xmm4
vmovdqa xmmword ptr [rsp+60H], xmm4
vmovdqa xmmword ptr [rsp+60H], xmm4
mov rax, -96
mov rax, -96
vmovdqa xmmword ptr [rsp+rax+D0H], xmm4
vmovdqa xmmword ptr [rsp+rax+D0H], xmm4
vmovdqa xmmword ptr [rsp+rax+E0H], xmm4
vmovdqa xmmword ptr [rsp+rax+E0H], xmm4
vmovdqa xmmword ptr [rsp+rax+F0H], xmm4
vmovdqa xmmword ptr [rsp+rax+F0H], xmm4
add rax, 48
add rax, 48
jne SHORT -5 instr
jne SHORT -5 instr
mov rsi, rcx
mov rsi, rcx
;; size=72 bbWeight=1 PerfScore 16.33
;; size=72 bbWeight=1 PerfScore 16.33
G_M20794_IG02:
G_M20794_IG02:
vxorps xmm0, xmm0, xmm0
vxorps xmm0, xmm0, xmm0
vmovupd xmmword ptr [rsp+D0H], xmm0
vmovupd xmmword ptr [rsp+D0H], xmm0
lea rcx, [rsp+98H]
lea rcx, [rsp+98H]
mov rdx, rsi
mov rdx, rsi
mov r8d, 4
mov r8d, 4
call [System.Xml.Schema.XsdDateTime+Parser:Parse(System.String,int):bool:this]
call [System.Xml.Schema.XsdDateTime+Parser:Parse(System.String,int):bool:this]
test eax, eax
test eax, eax
Copy
Copied
Copy
Copied
je
G_M20794_IG14
je
G_M20794_IG18
;; size=44 bbWeight=1 PerfScore 6.58
;; size=44 bbWeight=1 PerfScore 6.58
G_M20794_IG03:
G_M20794_IG03:
vmovdqu ymm0, ymmword ptr[rsp+98H]
vmovdqu ymm0, ymmword ptr[rsp+98H]
vmovdqu ymmword ptr[rsp+60H], ymm0
vmovdqu ymmword ptr[rsp+60H], ymm0
vmovdqu xmm0, xmmword ptr [rsp+B8H]
vmovdqu xmm0, xmmword ptr [rsp+B8H]
vmovdqu xmmword ptr [rsp+80H], xmm0
vmovdqu xmmword ptr [rsp+80H], xmm0
mov rcx, qword ptr [rsp+C8H]
mov rcx, qword ptr [rsp+C8H]
mov qword ptr [rsp+90H], rcx
mov qword ptr [rsp+90H], rcx
;; size=49 bbWeight=1 PerfScore 11.00
;; size=49 bbWeight=1 PerfScore 11.00
G_M20794_IG04:
G_M20794_IG04:
xor ecx, ecx
xor ecx, ecx
mov qword ptr [rsp+58H], rcx
mov qword ptr [rsp+58H], rcx
mov edx, dword ptr [rsp+6CH]
mov edx, dword ptr [rsp+6CH]
mov r8d, dword ptr [rsp+70H]
mov r8d, dword ptr [rsp+70H]
mov r9d, dword ptr [rsp+74H]
mov r9d, dword ptr [rsp+74H]
mov ecx, dword ptr [rsp+78H]
mov ecx, dword ptr [rsp+78H]
mov eax, dword ptr [rsp+7CH]
mov eax, dword ptr [rsp+7CH]
mov r10d, dword ptr [rsp+80H]
mov r10d, dword ptr [rsp+80H]
cmp r10d, 60
cmp r10d, 60
je G_M20794_IG09
je G_M20794_IG09
;; size=47 bbWeight=1 PerfScore 8.50
;; size=47 bbWeight=1 PerfScore 8.50
G_M20794_IG05:
G_M20794_IG05:
test edx, edx
test edx, edx
Copy
Copied
Copy
Copied
jle
G_M20794_IG15
jle
G_M20794_IG19
cmp edx, 0x270F
cmp edx, 0x270F
Copy
Copied
Copy
Copied
jg
G_M20794_IG15
jg
G_M20794_IG19
test r8d, r8d
test r8d, r8d
Copy
Copied
Copy
Copied
jle
G_M20794_IG15
jle
G_M20794_IG19
cmp r8d, 12
cmp r8d, 12
Copy
Copied
Copy
Copied
jg
G_M20794_IG15
jg
G_M20794_IG19
test r9d, r9d
test r9d, r9d
Copy
Copied
Copy
Copied
jle
G_M20794_IG15
jle
G_M20794_IG19
test dl, 3
test dl, 3
jne SHORT G_M20794_IG06
jne SHORT G_M20794_IG06
test dl, 15
test dl, 15
je SHORT G_M20794_IG07
je SHORT G_M20794_IG07
mov r11d, edx
mov r11d, edx
imul r11, r11, 0xD1FFAB1E
imul r11, r11, 0xD1FFAB1E
shr r11, 35
shr r11, 35
imul r11d, r11d, 25
imul r11d, r11d, 25
mov esi, edx
mov esi, edx
sub esi, r11d
sub esi, r11d
jne SHORT G_M20794_IG07
jne SHORT G_M20794_IG07
;; size=83 bbWeight=0.50 PerfScore 7.50
;; size=83 bbWeight=0.50 PerfScore 7.50
G_M20794_IG06:
G_M20794_IG06:
mov r11, 0xD1FFAB1E ; const ptr
mov r11, 0xD1FFAB1E ; const ptr
mov r11, gword ptr [r11]
mov r11, gword ptr [r11]
jmp SHORT G_M20794_IG08
jmp SHORT G_M20794_IG08
;; size=15 bbWeight=0.50 PerfScore 2.12
;; size=15 bbWeight=0.50 PerfScore 2.12
G_M20794_IG07:
G_M20794_IG07:
mov r11, 0xD1FFAB1E ; const ptr
mov r11, 0xD1FFAB1E ; const ptr
mov r11, gword ptr [r11]
mov r11, gword ptr [r11]
;; size=13 bbWeight=0.50 PerfScore 1.12
;; size=13 bbWeight=0.50 PerfScore 1.12
G_M20794_IG08:
G_M20794_IG08:
mov esi, dword ptr [r11+08H]
mov esi, dword ptr [r11+08H]
cmp r8d, esi
cmp r8d, esi
Copy
Copied
Copy
Copied
jae
G_M20794_IG17
jae
G_M20794_IG21
mov edi, r8d
mov edi, r8d
mov edi, dword ptr [r11+4*rdi+10H]
mov edi, dword ptr [r11+4*rdi+10H]
dec r8d
dec r8d
cmp r8d, esi
cmp r8d, esi
Copy
Copied
Copy
Copied
jae
G_M20794_IG17
jae
G_M20794_IG21
mov r8d, r8d
mov r8d, r8d
mov r8d, dword ptr [r11+4*r8+10H]
mov r8d, dword ptr [r11+4*r8+10H]
sub edi, r8d
sub edi, r8d
cmp edi, r9d
cmp edi, r9d
Copy
Copied
Copy
Copied
jb
G_M20794_IG15
jb
G_M20794_IG19
dec edx
dec edx
mov r11d, edx
mov r11d, edx
imul r11, r11, 0xD1FFAB1E
imul r11, r11, 0xD1FFAB1E
shr r11, 37
shr r11, 37
imul edx, edx, 0x5B5
imul edx, edx, 0x5B5
shr edx, 2
shr edx, 2
sub edx, r11d
sub edx, r11d
shr r11d, 2
shr r11d, 2
add edx, r11d
add edx, r11d
add edx, r8d
add edx, r8d
lea edx, [rdx+r9-01H]
lea edx, [rdx+r9-01H]
mov r8, 0xD1FFAB1E
mov r8, 0xD1FFAB1E
imul rdx, r8
imul rdx, r8
cmp ecx, 24
cmp ecx, 24
Copy
Copied
Copy
Copied
jae
G_M20794_IG16
jae
G_M20794_IG20
cmp eax, 60
cmp eax, 60
Copy
Copied
Copy
Copied
jae
G_M20794_IG16
jae
G_M20794_IG20
cmp r10d, 60
cmp r10d, 60
Copy
Copied
Copy
Copied
jae
G_M20794_IG16
jae
G_M20794_IG20
imul ecx, ecx, 0xE10
imul ecx, ecx, 0xE10
imul eax, eax, 60
imul eax, eax, 60
add ecx, eax
add ecx, eax
add ecx, r10d
add ecx, r10d
imul rcx, rcx, 0xD1FFAB1E
imul rcx, rcx, 0xD1FFAB1E
add rcx, rdx
add rcx, rdx
mov qword ptr [rsp+58H], rcx
mov qword ptr [rsp+58H], rcx
Copy
Copied
Copy
Copied
jmp
G_M20794_IG10
jmp
G_M20794_IG14
;; size=172 bbWeight=0.50 PerfScore 17.12
;; size=172 bbWeight=0.50 PerfScore 17.12
G_M20794_IG09:
G_M20794_IG09:
xor r10d, r10d
xor r10d, r10d
mov qword ptr [rsp+50H], r10
mov qword ptr [rsp+50H], r10
mov dword ptr [rsp+20H], ecx
mov dword ptr [rsp+20H], ecx
mov dword ptr [rsp+28H], eax
mov dword ptr [rsp+28H], eax
mov dword ptr [rsp+30H], 59
mov dword ptr [rsp+30H], 59
lea rcx, bword ptr [rsp+50H]
lea rcx, bword ptr [rsp+50H]
call [System.DateTime:.ctor(int,int,int,int,int,int):this]
call [System.DateTime:.ctor(int,int,int,int,int,int):this]
mov rcx, qword ptr [rsp+50H]
mov rcx, qword ptr [rsp+50H]
mov qword ptr [rsp+58H], rcx
mov qword ptr [rsp+58H], rcx
lea rcx, bword ptr [rsp+58H]
lea rcx, bword ptr [rsp+58H]
call [System.DateTime:get_Year():int:this]
call [System.DateTime:get_Year():int:this]
mov esi, eax
mov esi, eax
lea rcx, bword ptr [rsp+58H]
lea rcx, bword ptr [rsp+58H]
call [System.DateTime:get_Month():int:this]
call [System.DateTime:get_Month():int:this]
mov edi, eax
mov edi, eax
lea rcx, bword ptr [rsp+58H]
lea rcx, bword ptr [rsp+58H]
call [System.DateTime:get_Day():int:this]
call [System.DateTime:get_Day():int:this]
mov ebx, eax
mov ebx, eax
lea rcx, bword ptr [rsp+58H]
lea rcx, bword ptr [rsp+58H]
call [System.DateTime:get_Hour():int:this]
call [System.DateTime:get_Hour():int:this]
mov ebp, eax
mov ebp, eax
lea rcx, bword ptr [rsp+58H]
lea rcx, bword ptr [rsp+58H]
call [System.DateTime:get_Minute():int:this]
call [System.DateTime:get_Minute():int:this]
mov r14d, eax
mov r14d, eax
lea rcx, bword ptr [rsp+58H]
lea rcx, bword ptr [rsp+58H]
Copy
Copied
Copy
Copied
call
[System.DateTime:get_Kind():int:this]
call
[System.DateTime:get_InternalKind():ulong:this]
test rax, rax
je SHORT G_M20794_IG10
mov rcx, 0xD1FFAB1E
cmp rax, rcx
je SHORT G_M20794_IG11
jmp SHORT G_M20794_IG12
;; size=144 bbWeight=0.50 PerfScore 18.38
G_M20794_IG10:
xor ecx, ecx
jmp SHORT G_M20794_IG13
;; size=4 bbWeight=0.50 PerfScore 1.12
G_M20794_IG11:
mov ecx, 1
jmp SHORT G_M20794_IG13
;; size=7 bbWeight=0.50 PerfScore 1.12
G_M20794_IG12:
mov ecx, 2
;; size=5 bbWeight=0.50 PerfScore 0.12
G_M20794_IG13:
mov dword ptr [rsp+20H], r14d
mov dword ptr [rsp+28H], ecx
mov ecx, esi
mov ecx, esi
mov edx, edi
mov edx, edi
mov r8d, ebx
mov r8d, ebx
mov r9d, ebp
mov r9d, ebp
Copy
Copied
Copy
Copied
mov dword ptr [rsp+20H], r14d
mov dword ptr [rsp+28H], eax
call [System.DateTime:IsValidTimeWithLeapSeconds(int,int,int,int,int,int):bool]
call [System.DateTime:IsValidTimeWithLeapSeconds(int,int,int,int,int,int):bool]
test eax, eax
test eax, eax
Copy
Copied
Copy
Copied
je
G_M20794_IG16
je
G_M20794_IG20
;;
size=155
bbWeight=0.50 PerfScore
19.62
;;
size=33
bbWeight=0.50 PerfScore
3.62
G_M20794_IG10:
G_M20794_IG14:
mov rdx, qword ptr [rsp+58H]
mov rdx, qword ptr [rsp+58H]
mov qword ptr [rsp+D0H], rdx
mov qword ptr [rsp+D0H], rdx
cmp dword ptr [rsp+84H], 0
cmp dword ptr [rsp+84H], 0
Copy
Copied
Copy
Copied
je SHORT
G_M20794_IG12
je SHORT
G_M20794_IG16
;; size=23 bbWeight=1 PerfScore 5.00
;; size=23 bbWeight=1 PerfScore 5.00
Copy
Copied
Copy
Copied
G_M20794_IG11:
G_M20794_IG15:
movsxd rdx, dword ptr [rsp+84H]
movsxd rdx, dword ptr [rsp+84H]
lea rcx, bword ptr [rsp+D0H]
lea rcx, bword ptr [rsp+D0H]
call [System.DateTime:AddTicks(long):System.DateTime:this]
call [System.DateTime:AddTicks(long):System.DateTime:this]
mov qword ptr [rsp+D0H], rax
mov qword ptr [rsp+D0H], rax
;; size=30 bbWeight=0.50 PerfScore 3.75
;; size=30 bbWeight=0.50 PerfScore 3.75
Copy
Copied
Copy
Copied
G_M20794_IG12:
G_M20794_IG16:
mov ecx, dword ptr [rsp+68H]
mov ecx, dword ptr [rsp+68H]
shl ecx, 24
shl ecx, 24
mov eax, dword ptr [rsp+88H]
mov eax, dword ptr [rsp+88H]
shl eax, 16
shl eax, 16
or ecx, eax
or ecx, eax
mov eax, dword ptr [rsp+8CH]
mov eax, dword ptr [rsp+8CH]
shl eax, 8
shl eax, 8
or ecx, eax
or ecx, eax
or ecx, dword ptr [rsp+90H]
or ecx, dword ptr [rsp+90H]
mov dword ptr [rsp+D8H], ecx
mov dword ptr [rsp+D8H], ecx
vmovupd xmm0, xmmword ptr [rsp+D0H]
vmovupd xmm0, xmmword ptr [rsp+D0H]
vmovupd xmmword ptr [rsp+40H], xmm0
vmovupd xmmword ptr [rsp+40H], xmm0
lea rcx, [rsp+40H]
lea rcx, [rsp+40H]
call [System.Xml.Schema.XsdDateTime:op_Implicit(System.Xml.Schema.XsdDateTime):System.DateTime]
call [System.Xml.Schema.XsdDateTime:op_Implicit(System.Xml.Schema.XsdDateTime):System.DateTime]
nop
nop
;; size=72 bbWeight=1 PerfScore 15.75
;; size=72 bbWeight=1 PerfScore 15.75
Copy
Copied
Copy
Copied
G_M20794_IG13:
G_M20794_IG17:
add rsp, 224
add rsp, 224
pop rbx
pop rbx
pop rbp
pop rbp
pop rsi
pop rsi
pop rdi
pop rdi
pop r14
pop r14
ret
ret
;; size=14 bbWeight=1 PerfScore 3.75
;; size=14 bbWeight=1 PerfScore 3.75
Copy
Copied
Copy
Copied
G_M20794_IG14:
G_M20794_IG18:
mov rcx, 0xD1FFAB1E ; System.Xml.Schema.XsdDateTimeFlags
mov rcx, 0xD1FFAB1E ; System.Xml.Schema.XsdDateTimeFlags
call CORINFO_HELP_NEWSFAST
call CORINFO_HELP_NEWSFAST
mov rdi, rax
mov rdi, rax
call [System.SR:get_XmlConvert_BadFormat():System.String]
call [System.SR:get_XmlConvert_BadFormat():System.String]
mov rbx, rax
mov rbx, rax
mov dword ptr [rdi+08H], 4
mov dword ptr [rdi+08H], 4
mov rcx, 0xD1FFAB1E ; System.FormatException
mov rcx, 0xD1FFAB1E ; System.FormatException
call CORINFO_HELP_NEWSFAST
call CORINFO_HELP_NEWSFAST
mov rbp, rax
mov rbp, rax
mov r8, rdi
mov r8, rdi
mov rcx, rbx
mov rcx, rbx
mov rdx, rsi
mov rdx, rsi
call [System.SR:Format(System.String,System.Object,System.Object):System.String]
call [System.SR:Format(System.String,System.Object,System.Object):System.String]
mov rdx, rax
mov rdx, rax
mov rcx, rbp
mov rcx, rbp
call [System.FormatException:.ctor(System.String):this]
call [System.FormatException:.ctor(System.String):this]
mov rcx, rbp
mov rcx, rbp
call CORINFO_HELP_THROW
call CORINFO_HELP_THROW
;; size=87 bbWeight=0 PerfScore 0.00
;; size=87 bbWeight=0 PerfScore 0.00
Copy
Copied
Copy
Copied
G_M20794_IG15:
G_M20794_IG19:
call [System.ThrowHelper:ThrowArgumentOutOfRange_BadYearMonthDay()]
call [System.ThrowHelper:ThrowArgumentOutOfRange_BadYearMonthDay()]
int3
int3
;; size=7 bbWeight=0 PerfScore 0.00
;; size=7 bbWeight=0 PerfScore 0.00
Copy
Copied
Copy
Copied
G_M20794_IG16:
G_M20794_IG20:
call [System.ThrowHelper:ThrowArgumentOutOfRange_BadHourMinuteSecond()]
call [System.ThrowHelper:ThrowArgumentOutOfRange_BadHourMinuteSecond()]
int3
int3
;; size=7 bbWeight=0 PerfScore 0.00
;; size=7 bbWeight=0 PerfScore 0.00
Copy
Copied
Copy
Copied
G_M20794_IG17:
G_M20794_IG21:
call CORINFO_HELP_RNGCHKFAIL
call CORINFO_HELP_RNGCHKFAIL
int3
int3
;; size=6 bbWeight=0 PerfScore 0.00
;; size=6 bbWeight=0 PerfScore 0.00
Copy
Copied
Copy
Copied
; Total bytes of code
896,
prolog size 69, PerfScore
209.07,
instruction count
195,
allocated bytes for code
909
(MethodHash=010aaec5) for method System.Xml.Schema.XmlBaseConverter:StringToDate(System.String):System.DateTime
; Total bytes of code
934,
prolog size 69, PerfScore
217.62,
instruction count
206,
allocated bytes for code
947
(MethodHash=010aaec5) for method System.Xml.Schema.XmlBaseConverter:StringToDate(System.String):System.DateTime
; ============================================================
; ============================================================
Saved diffs
Original text
Open file
; Assembly listing for method System.Xml.Schema.XmlBaseConverter:StringToDate(System.String):System.DateTime G_M20794_IG01: push r14 push rdi push rsi push rbp push rbx sub rsp, 224 vzeroupper vxorps xmm4, xmm4 vmovdqa xmmword ptr [rsp+60H], xmm4 mov rax, -96 vmovdqa xmmword ptr [rsp+rax+D0H], xmm4 vmovdqa xmmword ptr [rsp+rax+E0H], xmm4 vmovdqa xmmword ptr [rsp+rax+F0H], xmm4 add rax, 48 jne SHORT -5 instr mov rsi, rcx ;; size=72 bbWeight=1 PerfScore 16.33 G_M20794_IG02: vxorps xmm0, xmm0, xmm0 vmovupd xmmword ptr [rsp+D0H], xmm0 lea rcx, [rsp+98H] mov rdx, rsi mov r8d, 4 call [System.Xml.Schema.XsdDateTime+Parser:Parse(System.String,int):bool:this] test eax, eax je G_M20794_IG14 ;; size=44 bbWeight=1 PerfScore 6.58 G_M20794_IG03: vmovdqu ymm0, ymmword ptr[rsp+98H] vmovdqu ymmword ptr[rsp+60H], ymm0 vmovdqu xmm0, xmmword ptr [rsp+B8H] vmovdqu xmmword ptr [rsp+80H], xmm0 mov rcx, qword ptr [rsp+C8H] mov qword ptr [rsp+90H], rcx ;; size=49 bbWeight=1 PerfScore 11.00 G_M20794_IG04: xor ecx, ecx mov qword ptr [rsp+58H], rcx mov edx, dword ptr [rsp+6CH] mov r8d, dword ptr [rsp+70H] mov r9d, dword ptr [rsp+74H] mov ecx, dword ptr [rsp+78H] mov eax, dword ptr [rsp+7CH] mov r10d, dword ptr [rsp+80H] cmp r10d, 60 je G_M20794_IG09 ;; size=47 bbWeight=1 PerfScore 8.50 G_M20794_IG05: test edx, edx jle G_M20794_IG15 cmp edx, 0x270F jg G_M20794_IG15 test r8d, r8d jle G_M20794_IG15 cmp r8d, 12 jg G_M20794_IG15 test r9d, r9d jle G_M20794_IG15 test dl, 3 jne SHORT G_M20794_IG06 test dl, 15 je SHORT G_M20794_IG07 mov r11d, edx imul r11, r11, 0xD1FFAB1E shr r11, 35 imul r11d, r11d, 25 mov esi, edx sub esi, r11d jne SHORT G_M20794_IG07 ;; size=83 bbWeight=0.50 PerfScore 7.50 G_M20794_IG06: mov r11, 0xD1FFAB1E ; const ptr mov r11, gword ptr [r11] jmp SHORT G_M20794_IG08 ;; size=15 bbWeight=0.50 PerfScore 2.12 G_M20794_IG07: mov r11, 0xD1FFAB1E ; const ptr mov r11, gword ptr [r11] ;; size=13 bbWeight=0.50 PerfScore 1.12 G_M20794_IG08: mov esi, dword ptr [r11+08H] cmp r8d, esi jae G_M20794_IG17 mov edi, r8d mov edi, dword ptr [r11+4*rdi+10H] dec r8d cmp r8d, esi jae G_M20794_IG17 mov r8d, r8d mov r8d, dword ptr [r11+4*r8+10H] sub edi, r8d cmp edi, r9d jb G_M20794_IG15 dec edx mov r11d, edx imul r11, r11, 0xD1FFAB1E shr r11, 37 imul edx, edx, 0x5B5 shr edx, 2 sub edx, r11d shr r11d, 2 add edx, r11d add edx, r8d lea edx, [rdx+r9-01H] mov r8, 0xD1FFAB1E imul rdx, r8 cmp ecx, 24 jae G_M20794_IG16 cmp eax, 60 jae G_M20794_IG16 cmp r10d, 60 jae G_M20794_IG16 imul ecx, ecx, 0xE10 imul eax, eax, 60 add ecx, eax add ecx, r10d imul rcx, rcx, 0xD1FFAB1E add rcx, rdx mov qword ptr [rsp+58H], rcx jmp G_M20794_IG10 ;; size=172 bbWeight=0.50 PerfScore 17.12 G_M20794_IG09: xor r10d, r10d mov qword ptr [rsp+50H], r10 mov dword ptr [rsp+20H], ecx mov dword ptr [rsp+28H], eax mov dword ptr [rsp+30H], 59 lea rcx, bword ptr [rsp+50H] call [System.DateTime:.ctor(int,int,int,int,int,int):this] mov rcx, qword ptr [rsp+50H] mov qword ptr [rsp+58H], rcx lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_Year():int:this] mov esi, eax lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_Month():int:this] mov edi, eax lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_Day():int:this] mov ebx, eax lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_Hour():int:this] mov ebp, eax lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_Minute():int:this] mov r14d, eax lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_Kind():int:this] mov ecx, esi mov edx, edi mov r8d, ebx mov r9d, ebp mov dword ptr [rsp+20H], r14d mov dword ptr [rsp+28H], eax call [System.DateTime:IsValidTimeWithLeapSeconds(int,int,int,int,int,int):bool] test eax, eax je G_M20794_IG16 ;; size=155 bbWeight=0.50 PerfScore 19.62 G_M20794_IG10: mov rdx, qword ptr [rsp+58H] mov qword ptr [rsp+D0H], rdx cmp dword ptr [rsp+84H], 0 je SHORT G_M20794_IG12 ;; size=23 bbWeight=1 PerfScore 5.00 G_M20794_IG11: movsxd rdx, dword ptr [rsp+84H] lea rcx, bword ptr [rsp+D0H] call [System.DateTime:AddTicks(long):System.DateTime:this] mov qword ptr [rsp+D0H], rax ;; size=30 bbWeight=0.50 PerfScore 3.75 G_M20794_IG12: mov ecx, dword ptr [rsp+68H] shl ecx, 24 mov eax, dword ptr [rsp+88H] shl eax, 16 or ecx, eax mov eax, dword ptr [rsp+8CH] shl eax, 8 or ecx, eax or ecx, dword ptr [rsp+90H] mov dword ptr [rsp+D8H], ecx vmovupd xmm0, xmmword ptr [rsp+D0H] vmovupd xmmword ptr [rsp+40H], xmm0 lea rcx, [rsp+40H] call [System.Xml.Schema.XsdDateTime:op_Implicit(System.Xml.Schema.XsdDateTime):System.DateTime] nop ;; size=72 bbWeight=1 PerfScore 15.75 G_M20794_IG13: add rsp, 224 pop rbx pop rbp pop rsi pop rdi pop r14 ret ;; size=14 bbWeight=1 PerfScore 3.75 G_M20794_IG14: mov rcx, 0xD1FFAB1E ; System.Xml.Schema.XsdDateTimeFlags call CORINFO_HELP_NEWSFAST mov rdi, rax call [System.SR:get_XmlConvert_BadFormat():System.String] mov rbx, rax mov dword ptr [rdi+08H], 4 mov rcx, 0xD1FFAB1E ; System.FormatException call CORINFO_HELP_NEWSFAST mov rbp, rax mov r8, rdi mov rcx, rbx mov rdx, rsi call [System.SR:Format(System.String,System.Object,System.Object):System.String] mov rdx, rax mov rcx, rbp call [System.FormatException:.ctor(System.String):this] mov rcx, rbp call CORINFO_HELP_THROW ;; size=87 bbWeight=0 PerfScore 0.00 G_M20794_IG15: call [System.ThrowHelper:ThrowArgumentOutOfRange_BadYearMonthDay()] int3 ;; size=7 bbWeight=0 PerfScore 0.00 G_M20794_IG16: call [System.ThrowHelper:ThrowArgumentOutOfRange_BadHourMinuteSecond()] int3 ;; size=7 bbWeight=0 PerfScore 0.00 G_M20794_IG17: call CORINFO_HELP_RNGCHKFAIL int3 ;; size=6 bbWeight=0 PerfScore 0.00 ; Total bytes of code 896, prolog size 69, PerfScore 209.07, instruction count 195, allocated bytes for code 909 (MethodHash=010aaec5) for method System.Xml.Schema.XmlBaseConverter:StringToDate(System.String):System.DateTime ; ============================================================
Changed text
Open file
; Assembly listing for method System.Xml.Schema.XmlBaseConverter:StringToDate(System.String):System.DateTime G_M20794_IG01: push r14 push rdi push rsi push rbp push rbx sub rsp, 224 vzeroupper vxorps xmm4, xmm4 vmovdqa xmmword ptr [rsp+60H], xmm4 mov rax, -96 vmovdqa xmmword ptr [rsp+rax+D0H], xmm4 vmovdqa xmmword ptr [rsp+rax+E0H], xmm4 vmovdqa xmmword ptr [rsp+rax+F0H], xmm4 add rax, 48 jne SHORT -5 instr mov rsi, rcx ;; size=72 bbWeight=1 PerfScore 16.33 G_M20794_IG02: vxorps xmm0, xmm0, xmm0 vmovupd xmmword ptr [rsp+D0H], xmm0 lea rcx, [rsp+98H] mov rdx, rsi mov r8d, 4 call [System.Xml.Schema.XsdDateTime+Parser:Parse(System.String,int):bool:this] test eax, eax je G_M20794_IG18 ;; size=44 bbWeight=1 PerfScore 6.58 G_M20794_IG03: vmovdqu ymm0, ymmword ptr[rsp+98H] vmovdqu ymmword ptr[rsp+60H], ymm0 vmovdqu xmm0, xmmword ptr [rsp+B8H] vmovdqu xmmword ptr [rsp+80H], xmm0 mov rcx, qword ptr [rsp+C8H] mov qword ptr [rsp+90H], rcx ;; size=49 bbWeight=1 PerfScore 11.00 G_M20794_IG04: xor ecx, ecx mov qword ptr [rsp+58H], rcx mov edx, dword ptr [rsp+6CH] mov r8d, dword ptr [rsp+70H] mov r9d, dword ptr [rsp+74H] mov ecx, dword ptr [rsp+78H] mov eax, dword ptr [rsp+7CH] mov r10d, dword ptr [rsp+80H] cmp r10d, 60 je G_M20794_IG09 ;; size=47 bbWeight=1 PerfScore 8.50 G_M20794_IG05: test edx, edx jle G_M20794_IG19 cmp edx, 0x270F jg G_M20794_IG19 test r8d, r8d jle G_M20794_IG19 cmp r8d, 12 jg G_M20794_IG19 test r9d, r9d jle G_M20794_IG19 test dl, 3 jne SHORT G_M20794_IG06 test dl, 15 je SHORT G_M20794_IG07 mov r11d, edx imul r11, r11, 0xD1FFAB1E shr r11, 35 imul r11d, r11d, 25 mov esi, edx sub esi, r11d jne SHORT G_M20794_IG07 ;; size=83 bbWeight=0.50 PerfScore 7.50 G_M20794_IG06: mov r11, 0xD1FFAB1E ; const ptr mov r11, gword ptr [r11] jmp SHORT G_M20794_IG08 ;; size=15 bbWeight=0.50 PerfScore 2.12 G_M20794_IG07: mov r11, 0xD1FFAB1E ; const ptr mov r11, gword ptr [r11] ;; size=13 bbWeight=0.50 PerfScore 1.12 G_M20794_IG08: mov esi, dword ptr [r11+08H] cmp r8d, esi jae G_M20794_IG21 mov edi, r8d mov edi, dword ptr [r11+4*rdi+10H] dec r8d cmp r8d, esi jae G_M20794_IG21 mov r8d, r8d mov r8d, dword ptr [r11+4*r8+10H] sub edi, r8d cmp edi, r9d jb G_M20794_IG19 dec edx mov r11d, edx imul r11, r11, 0xD1FFAB1E shr r11, 37 imul edx, edx, 0x5B5 shr edx, 2 sub edx, r11d shr r11d, 2 add edx, r11d add edx, r8d lea edx, [rdx+r9-01H] mov r8, 0xD1FFAB1E imul rdx, r8 cmp ecx, 24 jae G_M20794_IG20 cmp eax, 60 jae G_M20794_IG20 cmp r10d, 60 jae G_M20794_IG20 imul ecx, ecx, 0xE10 imul eax, eax, 60 add ecx, eax add ecx, r10d imul rcx, rcx, 0xD1FFAB1E add rcx, rdx mov qword ptr [rsp+58H], rcx jmp G_M20794_IG14 ;; size=172 bbWeight=0.50 PerfScore 17.12 G_M20794_IG09: xor r10d, r10d mov qword ptr [rsp+50H], r10 mov dword ptr [rsp+20H], ecx mov dword ptr [rsp+28H], eax mov dword ptr [rsp+30H], 59 lea rcx, bword ptr [rsp+50H] call [System.DateTime:.ctor(int,int,int,int,int,int):this] mov rcx, qword ptr [rsp+50H] mov qword ptr [rsp+58H], rcx lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_Year():int:this] mov esi, eax lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_Month():int:this] mov edi, eax lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_Day():int:this] mov ebx, eax lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_Hour():int:this] mov ebp, eax lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_Minute():int:this] mov r14d, eax lea rcx, bword ptr [rsp+58H] call [System.DateTime:get_InternalKind():ulong:this] test rax, rax je SHORT G_M20794_IG10 mov rcx, 0xD1FFAB1E cmp rax, rcx je SHORT G_M20794_IG11 jmp SHORT G_M20794_IG12 ;; size=144 bbWeight=0.50 PerfScore 18.38 G_M20794_IG10: xor ecx, ecx jmp SHORT G_M20794_IG13 ;; size=4 bbWeight=0.50 PerfScore 1.12 G_M20794_IG11: mov ecx, 1 jmp SHORT G_M20794_IG13 ;; size=7 bbWeight=0.50 PerfScore 1.12 G_M20794_IG12: mov ecx, 2 ;; size=5 bbWeight=0.50 PerfScore 0.12 G_M20794_IG13: mov dword ptr [rsp+20H], r14d mov dword ptr [rsp+28H], ecx mov ecx, esi mov edx, edi mov r8d, ebx mov r9d, ebp call [System.DateTime:IsValidTimeWithLeapSeconds(int,int,int,int,int,int):bool] test eax, eax je G_M20794_IG20 ;; size=33 bbWeight=0.50 PerfScore 3.62 G_M20794_IG14: mov rdx, qword ptr [rsp+58H] mov qword ptr [rsp+D0H], rdx cmp dword ptr [rsp+84H], 0 je SHORT G_M20794_IG16 ;; size=23 bbWeight=1 PerfScore 5.00 G_M20794_IG15: movsxd rdx, dword ptr [rsp+84H] lea rcx, bword ptr [rsp+D0H] call [System.DateTime:AddTicks(long):System.DateTime:this] mov qword ptr [rsp+D0H], rax ;; size=30 bbWeight=0.50 PerfScore 3.75 G_M20794_IG16: mov ecx, dword ptr [rsp+68H] shl ecx, 24 mov eax, dword ptr [rsp+88H] shl eax, 16 or ecx, eax mov eax, dword ptr [rsp+8CH] shl eax, 8 or ecx, eax or ecx, dword ptr [rsp+90H] mov dword ptr [rsp+D8H], ecx vmovupd xmm0, xmmword ptr [rsp+D0H] vmovupd xmmword ptr [rsp+40H], xmm0 lea rcx, [rsp+40H] call [System.Xml.Schema.XsdDateTime:op_Implicit(System.Xml.Schema.XsdDateTime):System.DateTime] nop ;; size=72 bbWeight=1 PerfScore 15.75 G_M20794_IG17: add rsp, 224 pop rbx pop rbp pop rsi pop rdi pop r14 ret ;; size=14 bbWeight=1 PerfScore 3.75 G_M20794_IG18: mov rcx, 0xD1FFAB1E ; System.Xml.Schema.XsdDateTimeFlags call CORINFO_HELP_NEWSFAST mov rdi, rax call [System.SR:get_XmlConvert_BadFormat():System.String] mov rbx, rax mov dword ptr [rdi+08H], 4 mov rcx, 0xD1FFAB1E ; System.FormatException call CORINFO_HELP_NEWSFAST mov rbp, rax mov r8, rdi mov rcx, rbx mov rdx, rsi call [System.SR:Format(System.String,System.Object,System.Object):System.String] mov rdx, rax mov rcx, rbp call [System.FormatException:.ctor(System.String):this] mov rcx, rbp call CORINFO_HELP_THROW ;; size=87 bbWeight=0 PerfScore 0.00 G_M20794_IG19: call [System.ThrowHelper:ThrowArgumentOutOfRange_BadYearMonthDay()] int3 ;; size=7 bbWeight=0 PerfScore 0.00 G_M20794_IG20: call [System.ThrowHelper:ThrowArgumentOutOfRange_BadHourMinuteSecond()] int3 ;; size=7 bbWeight=0 PerfScore 0.00 G_M20794_IG21: call CORINFO_HELP_RNGCHKFAIL int3 ;; size=6 bbWeight=0 PerfScore 0.00 ; Total bytes of code 934, prolog size 69, PerfScore 217.62, instruction count 206, allocated bytes for code 947 (MethodHash=010aaec5) for method System.Xml.Schema.XmlBaseConverter:StringToDate(System.String):System.DateTime ; ============================================================
Find difference