Diff
checker
Testo
Testo
Immagini
Documenti
Excel
Cartelle
Legal
Enterprise
Applicazione per desktop
Prezzi
Accedi
Scarica Diffchecker Desktop
Confronta il testo
Trova la differenza tra due file di testo
Strumenti
Cronologia
Editor live
Comprimi invariate
Senza a capo
Layout
Diviso
Unificato
Livello di dettaglio
Intelligente
Parola
Carattere
Evidenziazione sintassi
Scegli sintassi
Ignora
Trasforma testo
Vai alla prima modifica
Modifica input
Diffchecker Desktop
Il modo più sicuro per usare Diffchecker. Ottieni l'app Diffchecker Desktop: i tuoi diff non lasciano mai il tuo computer!
Ottieni Desktop
Untitled Diff
Creato
3 anni fa
Il diff non scade mai
Eliminare
Esporta
Condividere
Spiegare
51 rimozioni
Linee
Totale
Rimosso
Caratteri
Totale
Rimosso
Per continuare a utilizzare questa funzione, aggiorna a
Diff
checker
Pro
Visualizza prezzi
116 linee
Copia tutti
54 aggiunte
Linee
Totale
Aggiunto
Caratteri
Totale
Aggiunto
Per continuare a utilizzare questa funzione, aggiorna a
Diff
checker
Pro
Visualizza prezzi
116 linee
Copia tutti
; Assembly listing for method System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
; Assembly listing for method System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
; Emitting BLENDED_CODE for X64 CPU with SSE2 - Windows
; Emitting BLENDED_CODE for X64 CPU with SSE2 - Windows
; ReadyToRun compilation
; ReadyToRun compilation
; optimized code
; optimized code
; rsp based frame
; rsp based frame
; fully interruptible
; fully interruptible
; No PGO data
; No PGO data
; 0 inlinees with PGO data; 0 single block inlinees; 2 inlinees without PGO data
; 0 inlinees with PGO data; 0 single block inlinees; 2 inlinees without PGO data
; Final local variable assignments
; Final local variable assignments
;
;
Copia
Copiato
Copia
Copiato
; V00 arg0 [V00,
T09
] ( 3, 3 ) ref -> rcx class-hnd single-def
; V00 arg0 [V00,
T11
] ( 3, 3 ) ref -> rcx class-hnd single-def
; V01 arg1 [V01,T00] (
12, 26
) byref -> rsi single-def
; V01 arg1 [V01,T00] (
10, 22
) byref -> rsi single-def
; V02 loc0 [V02,T0
7
] ( 3, 6 ) ref -> rdi class-hnd single-def
; V02 loc0 [V02,T0
8
] ( 3, 6 ) ref -> rdi class-hnd single-def
; V03 loc1 [V03,T0
2
] ( 5, 17 ) int -> rbx
; V03 loc1 [V03,T0
3
] ( 5, 17 ) int -> rbx
; V04 loc2 [V04,T0
1
] ( 7, 18 ) ushort -> r14
; V04 loc2 [V04,T0
2
] ( 7, 18 ) ushort -> r14
; V05 OutArgs [V05 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace"
; V05 OutArgs [V05 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace"
Copia
Copiato
Copia
Copiato
; V06 tmp1 [V06,T06] (
5, 10
) int -> rcx "Inline stloc first use temp"
; V06 tmp1 [V06,T06] (
4, 8
) int -> rcx "Inline stloc first use temp"
;
V07 tmp2 [V07
,T04
] (
3, 12
)
by
ref
-> rdx "Span.get_Item ptrToSpan
"
;
*
V07 tmp2 [V07
] (
0, 0
)
struct (16) zero-
ref
ld-addr-op "Inline stloc first use temp
"
; V08 tmp3 [V08,T0
3
] (
5, 14
) int -> rcx "Inline stloc first use temp"
; V08 tmp3 [V08,T0
4
] (
4, 12
) int -> rcx "Inline stloc first use temp"
;
V09 tmp4 [V09
,T05] ( 3, 12 ) byref -> rdx "
Span.get_Item ptrToSpan"
;
*
V09 tmp4 [V09
] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp"
; V1
0
cse0 [V1
0
,T0
8
] ( 3, 6 ) int -> rbp "CSE - aggressive"
; V10 tmp5 [V10,T12] ( 2, 4 ) byref -> rax V07._reference(offs=0x00) P-INDEP "field V07._reference (fldOffset=0x0)"
; V11 tmp6 [V11,T13] ( 2, 4 ) int -> rdx V07._length(offs=0x08) P-INDEP "field V07._length (fldOffset=0x8)"
; V12 tmp7 [V12,T10] ( 2, 6 ) byref -> rax V09._reference(offs=0x00) P-INDEP "field V09._reference (fldOffset=0x0)"
; V13 tmp8 [V13,T07] ( 2, 8 ) int -> rdx V09._length(offs=0x08) P-INDEP "field V09._length (fldOffset=0x8)"
; V14 tmp9 [V14
,T05] ( 3, 12 ) byref -> rdx "
BlockOp address local"
; V15 tmp10 [V15,T01] ( 3, 24 ) byref -> rdx "BlockOp address local"
; V1
6
cse0 [V1
6
,T0
9
] ( 3, 6 ) int -> rbp "CSE - aggressive"
;
;
; Lcl frame size = 32
; Lcl frame size = 32
G_M45441_IG01:
G_M45441_IG01:
push r14
push r14
push rdi
push rdi
push rsi
push rsi
push rbp
push rbp
push rbx
push rbx
sub rsp, 32
sub rsp, 32
mov rsi, rdx
mov rsi, rdx
;; size=13 bbWeight=1 PerfScore 5.50
;; size=13 bbWeight=1 PerfScore 5.50
G_M45441_IG02:
G_M45441_IG02:
mov rdi, rcx
mov rdi, rcx
xor ebx, ebx
xor ebx, ebx
mov ebp, dword ptr [rdi+08H]
mov ebp, dword ptr [rdi+08H]
test ebp, ebp
test ebp, ebp
jle G_M45441_IG11
jle G_M45441_IG11
;; size=16 bbWeight=1 PerfScore 3.75
;; size=16 bbWeight=1 PerfScore 3.75
G_M45441_IG03:
G_M45441_IG03:
mov ecx, ebx
mov ecx, ebx
movzx r14, word ptr [rdi+2*rcx+0CH]
movzx r14, word ptr [rdi+2*rcx+0CH]
cmp r14d, 92
cmp r14d, 92
je SHORT G_M45441_IG05
je SHORT G_M45441_IG05
;; size=14 bbWeight=4 PerfScore 14.00
;; size=14 bbWeight=4 PerfScore 14.00
G_M45441_IG04:
G_M45441_IG04:
cmp r14d, 91
cmp r14d, 91
je SHORT G_M45441_IG05
je SHORT G_M45441_IG05
cmp r14d, 93
cmp r14d, 93
je SHORT G_M45441_IG05
je SHORT G_M45441_IG05
cmp r14d, 59
cmp r14d, 59
jne SHORT G_M45441_IG07
jne SHORT G_M45441_IG07
;; size=18 bbWeight=2 PerfScore 7.50
;; size=18 bbWeight=2 PerfScore 7.50
G_M45441_IG05:
G_M45441_IG05:
mov ecx, dword ptr [rsi+08H]
mov ecx, dword ptr [rsi+08H]
Copia
Copiato
Copia
Copiato
cmp ecx, dword ptr [rsi+18H]
jae SHORT G_M45441_IG06
lea rdx, bword ptr [rsi+10H]
lea rdx, bword ptr [rsi+10H]
Copia
Copiato
Copia
Copiato
cmp
e
c
x, dword ptr [rdx+08H]
mov rax, bword ptr [rdx]
jae SHORT G_M45441_
IG12
mov
e
d
x, dword ptr [rdx+08H]
mov rdx, bword ptr [rdx]
cmp ecx, edx
mov e
a
x, ecx
jae SHORT G_M45441_
IG06
mov word ptr [r
d
x+2*r
a
x], 92
mov e
d
x, ecx
mov word ptr [r
a
x+2*r
d
x], 92
inc ecx
inc ecx
mov dword ptr [rsi+08H], ecx
mov dword ptr [rsi+08H], ecx
jmp SHORT G_M45441_IG07
jmp SHORT G_M45441_IG07
Copia
Copiato
Copia
Copiato
;; size=
35
bbWeight=2 PerfScore
34.00
;; size=
32
bbWeight=2 PerfScore
24.50
G_M45441_IG06:
G_M45441_IG06:
mov rcx, rsi
mov rcx, rsi
mov edx, 92
mov edx, 92
call [System.Text.ValueStringBuilder:GrowAndAppend(ushort):this]
call [System.Text.ValueStringBuilder:GrowAndAppend(ushort):this]
;; size=14 bbWeight=2 PerfScore 7.00
;; size=14 bbWeight=2 PerfScore 7.00
G_M45441_IG07:
G_M45441_IG07:
mov ecx, dword ptr [rsi+08H]
mov ecx, dword ptr [rsi+08H]
Copia
Copiato
Copia
Copiato
cmp ecx,
dword ptr [rsi+18H]
lea rdx, bword ptr [rsi+10H]
mov rax, bword ptr [rdx]
mov edx, dword ptr [rdx+08H]
cmp ecx,
edx
jae SHORT G_M45441_IG09
jae SHORT G_M45441_IG09
Copia
Copiato
Copia
Copiato
;; size=
8
bbWeight=4 PerfScore
24
.00
;; size=
17
bbWeight=4 PerfScore
31
.00
G_M45441_IG08:
G_M45441_IG08:
Copia
Copiato
Copia
Copiato
lea rdx, bword ptr [rsi+10H]
mov e
d
x, ecx
cmp ecx, dword ptr [rdx+08H]
mov word ptr [r
a
x+2*r
d
x], r14w
jae SHORT G_M45441_IG12
mov rdx, bword ptr [rdx]
mov e
a
x, ecx
mov word ptr [r
d
x+2*r
a
x], r14w
inc ecx
inc ecx
mov dword ptr [rsi+08H], ecx
mov dword ptr [rsi+08H], ecx
jmp SHORT G_M45441_IG10
jmp SHORT G_M45441_IG10
Copia
Copiato
Copia
Copiato
;; size=
26
bbWeight=2 PerfScore
22
.00
;; size=
14
bbWeight=2 PerfScore
9
.00
G_M45441_IG09:
G_M45441_IG09:
mov rcx, rsi
mov rcx, rsi
mov edx, r14d
mov edx, r14d
call [System.Text.ValueStringBuilder:GrowAndAppend(ushort):this]
call [System.Text.ValueStringBuilder:GrowAndAppend(ushort):this]
;; size=12 bbWeight=2 PerfScore 7.00
;; size=12 bbWeight=2 PerfScore 7.00
G_M45441_IG10:
G_M45441_IG10:
inc ebx
inc ebx
cmp ebp, ebx
cmp ebp, ebx
Copia
Copiato
Copia
Copiato
jg
G_M45441_IG03
jg
SHORT
G_M45441_IG03
;; size=
10
bbWeight=4 PerfScore 6.00
;; size=
6
bbWeight=4 PerfScore 6.00
G_M45441_IG11:
G_M45441_IG11:
add rsp, 32
add rsp, 32
pop rbx
pop rbx
pop rbp
pop rbp
pop rsi
pop rsi
pop rdi
pop rdi
pop r14
pop r14
ret
ret
;; size=11 bbWeight=1 PerfScore 3.75
;; size=11 bbWeight=1 PerfScore 3.75
Copia
Copiato
Copia
Copiato
G_M45441_IG12:
call [CORINFO_HELP_RNGCHKFAIL]
int3
;; size=7 bbWeight=0 PerfScore 0.00
Copia
Copiato
Copia
Copiato
; Total bytes of code
184
, prolog size 13, PerfScore 1
52.90
, instruction count
64
, allocated bytes for code
184
(MethodHash=a0f64e7e) for method System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
; Total bytes of code
167
, prolog size 13, PerfScore 1
35.70
, instruction count
60
, allocated bytes for code
167
(MethodHash=a0f64e7e) for method System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref)
; ============================================================
; ============================================================
Diff salvati
Testo originale
Apri file
; Assembly listing for method System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref) ; Emitting BLENDED_CODE for X64 CPU with SSE2 - Windows ; ReadyToRun compilation ; optimized code ; rsp based frame ; fully interruptible ; No PGO data ; 0 inlinees with PGO data; 0 single block inlinees; 2 inlinees without PGO data ; Final local variable assignments ; ; V00 arg0 [V00,T09] ( 3, 3 ) ref -> rcx class-hnd single-def ; V01 arg1 [V01,T00] ( 12, 26 ) byref -> rsi single-def ; V02 loc0 [V02,T07] ( 3, 6 ) ref -> rdi class-hnd single-def ; V03 loc1 [V03,T02] ( 5, 17 ) int -> rbx ; V04 loc2 [V04,T01] ( 7, 18 ) ushort -> r14 ; V05 OutArgs [V05 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace" ; V06 tmp1 [V06,T06] ( 5, 10 ) int -> rcx "Inline stloc first use temp" ; V07 tmp2 [V07,T04] ( 3, 12 ) byref -> rdx "Span.get_Item ptrToSpan" ; V08 tmp3 [V08,T03] ( 5, 14 ) int -> rcx "Inline stloc first use temp" ; V09 tmp4 [V09,T05] ( 3, 12 ) byref -> rdx "Span.get_Item ptrToSpan" ; V10 cse0 [V10,T08] ( 3, 6 ) int -> rbp "CSE - aggressive" ; ; Lcl frame size = 32 G_M45441_IG01: push r14 push rdi push rsi push rbp push rbx sub rsp, 32 mov rsi, rdx ;; size=13 bbWeight=1 PerfScore 5.50 G_M45441_IG02: mov rdi, rcx xor ebx, ebx mov ebp, dword ptr [rdi+08H] test ebp, ebp jle G_M45441_IG11 ;; size=16 bbWeight=1 PerfScore 3.75 G_M45441_IG03: mov ecx, ebx movzx r14, word ptr [rdi+2*rcx+0CH] cmp r14d, 92 je SHORT G_M45441_IG05 ;; size=14 bbWeight=4 PerfScore 14.00 G_M45441_IG04: cmp r14d, 91 je SHORT G_M45441_IG05 cmp r14d, 93 je SHORT G_M45441_IG05 cmp r14d, 59 jne SHORT G_M45441_IG07 ;; size=18 bbWeight=2 PerfScore 7.50 G_M45441_IG05: mov ecx, dword ptr [rsi+08H] cmp ecx, dword ptr [rsi+18H] jae SHORT G_M45441_IG06 lea rdx, bword ptr [rsi+10H] cmp ecx, dword ptr [rdx+08H] jae SHORT G_M45441_IG12 mov rdx, bword ptr [rdx] mov eax, ecx mov word ptr [rdx+2*rax], 92 inc ecx mov dword ptr [rsi+08H], ecx jmp SHORT G_M45441_IG07 ;; size=35 bbWeight=2 PerfScore 34.00 G_M45441_IG06: mov rcx, rsi mov edx, 92 call [System.Text.ValueStringBuilder:GrowAndAppend(ushort):this] ;; size=14 bbWeight=2 PerfScore 7.00 G_M45441_IG07: mov ecx, dword ptr [rsi+08H] cmp ecx, dword ptr [rsi+18H] jae SHORT G_M45441_IG09 ;; size=8 bbWeight=4 PerfScore 24.00 G_M45441_IG08: lea rdx, bword ptr [rsi+10H] cmp ecx, dword ptr [rdx+08H] jae SHORT G_M45441_IG12 mov rdx, bword ptr [rdx] mov eax, ecx mov word ptr [rdx+2*rax], r14w inc ecx mov dword ptr [rsi+08H], ecx jmp SHORT G_M45441_IG10 ;; size=26 bbWeight=2 PerfScore 22.00 G_M45441_IG09: mov rcx, rsi mov edx, r14d call [System.Text.ValueStringBuilder:GrowAndAppend(ushort):this] ;; size=12 bbWeight=2 PerfScore 7.00 G_M45441_IG10: inc ebx cmp ebp, ebx jg G_M45441_IG03 ;; size=10 bbWeight=4 PerfScore 6.00 G_M45441_IG11: add rsp, 32 pop rbx pop rbp pop rsi pop rdi pop r14 ret ;; size=11 bbWeight=1 PerfScore 3.75 G_M45441_IG12: call [CORINFO_HELP_RNGCHKFAIL] int3 ;; size=7 bbWeight=0 PerfScore 0.00 ; Total bytes of code 184, prolog size 13, PerfScore 152.90, instruction count 64, allocated bytes for code 184 (MethodHash=a0f64e7e) for method System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref) ; ============================================================
Testo modificato
Apri file
; Assembly listing for method System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref) ; Emitting BLENDED_CODE for X64 CPU with SSE2 - Windows ; ReadyToRun compilation ; optimized code ; rsp based frame ; fully interruptible ; No PGO data ; 0 inlinees with PGO data; 0 single block inlinees; 2 inlinees without PGO data ; Final local variable assignments ; ; V00 arg0 [V00,T11] ( 3, 3 ) ref -> rcx class-hnd single-def ; V01 arg1 [V01,T00] ( 10, 22 ) byref -> rsi single-def ; V02 loc0 [V02,T08] ( 3, 6 ) ref -> rdi class-hnd single-def ; V03 loc1 [V03,T03] ( 5, 17 ) int -> rbx ; V04 loc2 [V04,T02] ( 7, 18 ) ushort -> r14 ; V05 OutArgs [V05 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace" ; V06 tmp1 [V06,T06] ( 4, 8 ) int -> rcx "Inline stloc first use temp" ;* V07 tmp2 [V07 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" ; V08 tmp3 [V08,T04] ( 4, 12 ) int -> rcx "Inline stloc first use temp" ;* V09 tmp4 [V09 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inline stloc first use temp" ; V10 tmp5 [V10,T12] ( 2, 4 ) byref -> rax V07._reference(offs=0x00) P-INDEP "field V07._reference (fldOffset=0x0)" ; V11 tmp6 [V11,T13] ( 2, 4 ) int -> rdx V07._length(offs=0x08) P-INDEP "field V07._length (fldOffset=0x8)" ; V12 tmp7 [V12,T10] ( 2, 6 ) byref -> rax V09._reference(offs=0x00) P-INDEP "field V09._reference (fldOffset=0x0)" ; V13 tmp8 [V13,T07] ( 2, 8 ) int -> rdx V09._length(offs=0x08) P-INDEP "field V09._length (fldOffset=0x8)" ; V14 tmp9 [V14,T05] ( 3, 12 ) byref -> rdx "BlockOp address local" ; V15 tmp10 [V15,T01] ( 3, 24 ) byref -> rdx "BlockOp address local" ; V16 cse0 [V16,T09] ( 3, 6 ) int -> rbp "CSE - aggressive" ; ; Lcl frame size = 32 G_M45441_IG01: push r14 push rdi push rsi push rbp push rbx sub rsp, 32 mov rsi, rdx ;; size=13 bbWeight=1 PerfScore 5.50 G_M45441_IG02: mov rdi, rcx xor ebx, ebx mov ebp, dword ptr [rdi+08H] test ebp, ebp jle G_M45441_IG11 ;; size=16 bbWeight=1 PerfScore 3.75 G_M45441_IG03: mov ecx, ebx movzx r14, word ptr [rdi+2*rcx+0CH] cmp r14d, 92 je SHORT G_M45441_IG05 ;; size=14 bbWeight=4 PerfScore 14.00 G_M45441_IG04: cmp r14d, 91 je SHORT G_M45441_IG05 cmp r14d, 93 je SHORT G_M45441_IG05 cmp r14d, 59 jne SHORT G_M45441_IG07 ;; size=18 bbWeight=2 PerfScore 7.50 G_M45441_IG05: mov ecx, dword ptr [rsi+08H] lea rdx, bword ptr [rsi+10H] mov rax, bword ptr [rdx] mov edx, dword ptr [rdx+08H] cmp ecx, edx jae SHORT G_M45441_IG06 mov edx, ecx mov word ptr [rax+2*rdx], 92 inc ecx mov dword ptr [rsi+08H], ecx jmp SHORT G_M45441_IG07 ;; size=32 bbWeight=2 PerfScore 24.50 G_M45441_IG06: mov rcx, rsi mov edx, 92 call [System.Text.ValueStringBuilder:GrowAndAppend(ushort):this] ;; size=14 bbWeight=2 PerfScore 7.00 G_M45441_IG07: mov ecx, dword ptr [rsi+08H] lea rdx, bword ptr [rsi+10H] mov rax, bword ptr [rdx] mov edx, dword ptr [rdx+08H] cmp ecx, edx jae SHORT G_M45441_IG09 ;; size=17 bbWeight=4 PerfScore 31.00 G_M45441_IG08: mov edx, ecx mov word ptr [rax+2*rdx], r14w inc ecx mov dword ptr [rsi+08H], ecx jmp SHORT G_M45441_IG10 ;; size=14 bbWeight=2 PerfScore 9.00 G_M45441_IG09: mov rcx, rsi mov edx, r14d call [System.Text.ValueStringBuilder:GrowAndAppend(ushort):this] ;; size=12 bbWeight=2 PerfScore 7.00 G_M45441_IG10: inc ebx cmp ebp, ebx jg SHORT G_M45441_IG03 ;; size=6 bbWeight=4 PerfScore 6.00 G_M45441_IG11: add rsp, 32 pop rbx pop rbp pop rsi pop rdi pop r14 ret ;; size=11 bbWeight=1 PerfScore 3.75 ; Total bytes of code 167, prolog size 13, PerfScore 135.70, instruction count 60, allocated bytes for code 167 (MethodHash=a0f64e7e) for method System.TimeZoneInfo+StringSerializer:SerializeSubstitute(System.String,byref) ; ============================================================
Trovare la differenza