Diff
checker
Text
Text
Bilder
Dokumente
Excel
Ordner
Legal
Enterprise
Desktop-App
Preise
Einloggen
Diffchecker Desktop herunterladen
Texte vergleichen
Finde den Unterschied zwischen zwei Textdateien
Werkzeuge
Verlauf
Live-Editor
Leerzeichen ausblenden
Gleiches ausblenden
Zeilenumbruch aus
Ansicht
Zweispaltig
Einspaltig
Vergleichsgenauigkeit
Intelligent
Wort
Zeichen
Textstile
Darstellung ändern
Syntaxhervorhebung
Syntax auswählen
Ignorieren
Text umwandeln
Zur ersten Änderung
Eingabe bearbeiten
Diffchecker Desktop
Der sicherste Weg, Diffchecker zu nutzen. Hol dir die Desktop-App: Deine Diffs verlassen nie deinen Computer!
Desktop holen
Untitled Diff
Erstellt
vor 5 Jahren
Diff läuft nie ab
Löschen
Exportieren
Teilen
Erklären
14 Entfernungen
Zeilen
Gesamt
Entfernt
Zeichen
Gesamt
Entfernt
Um diese Funktion weiterhin zu nutzen, aktualisiere auf
Diff
checker
Pro
Preise anzeigen
110 Zeilen
Kopieren
13 Hinzufügungen
Zeilen
Gesamt
Hinzugefügt
Zeichen
Gesamt
Hinzugefügt
Um diese Funktion weiterhin zu nutzen, aktualisiere auf
Diff
checker
Pro
Preise anzeigen
109 Zeilen
Kopieren
; Assembly listing for method JsonSerializerOptionsUpdateHandler:ClearCache(ref)
; Assembly listing for method JsonSerializerOptionsUpdateHandler:ClearCache(ref)
; Emitting BLENDED_CODE for X64 CPU with AVX - Windows
; Emitting BLENDED_CODE for X64 CPU with AVX - Windows
; optimized code
; optimized code
; rbp based frame
; rbp based frame
; fully interruptible
; fully interruptible
; No PGO data
; No PGO data
; 0 inlinees with PGO data; 4 single block inlinees; 0 inlinees without PGO data
; 0 inlinees with PGO data; 4 single block inlinees; 0 inlinees without PGO data
; Final local variable assignments
; Final local variable assignments
;
;
;* V00 arg0 [V00 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def
;* V00 arg0 [V00 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def
; V01 loc0 [V01,T01] ( 7, 10 ) ref -> [rbp-28H] class-hnd EH-live single-def
; V01 loc0 [V01,T01] ( 7, 10 ) ref -> [rbp-28H] class-hnd EH-live single-def
; V02 loc1 [V02 ] ( 2, 8 ) struct (16) [rbp-20H] do-not-enreg[XSB] must-init addr-exposed ld-addr-op
; V02 loc1 [V02 ] ( 2, 8 ) struct (16) [rbp-20H] do-not-enreg[XSB] must-init addr-exposed ld-addr-op
; V03 OutArgs [V03 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace"
; V03 OutArgs [V03 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace"
; V04 tmp1 [V04,T00] ( 3, 24 ) ref -> rdi class-hnd "Inlining Arg"
; V04 tmp1 [V04,T00] ( 3, 24 ) ref -> rdi class-hnd "Inlining Arg"
; V05 tmp2 [V05 ] ( 2, 8 ) ref -> [rbp-20H] do-not-enreg[X] addr-exposed V02.key(offs=0x00) P-DEP "field V02.key (fldOffset=0x0)"
; V05 tmp2 [V05 ] ( 2, 8 ) ref -> [rbp-20H] do-not-enreg[X] addr-exposed V02.key(offs=0x00) P-DEP "field V02.key (fldOffset=0x0)"
; V06 tmp3 [V06 ] ( 1, 4 ) ref -> [rbp-18H] do-not-enreg[X] addr-exposed V02.value(offs=0x08) P-DEP "field V02.value (fldOffset=0x8)"
; V06 tmp3 [V06 ] ( 1, 4 ) ref -> [rbp-18H] do-not-enreg[X] addr-exposed V02.value(offs=0x08) P-DEP "field V02.value (fldOffset=0x8)"
Kopieren
Kopiert
Kopieren
Kopiert
; V07
tmp4 [V07,T02] ( 2, 4 ) ref -> rcx single-def "argument with side effect"
; V07
PSPSym [V0
7
] ( 1, 1 ) long -> [rbp-30H] do-not-enreg[X] addr-exposed "PSPSym"
; V08
PSPSym [V0
8
] ( 1, 1 ) long -> [rbp-30H] do-not-enreg[X] addr-exposed "PSPSym"
; V0
8
tmp
5
[V0
8
,T0
2
] ( 2, 2 ) ref -> rsi "optAddCopies"
; V0
9
tmp
6
[V0
9
,T0
3
] ( 2, 2 ) ref -> rsi "optAddCopies"
;
;
; Lcl frame size = 64
; Lcl frame size = 64
G_M53696_IG01:
G_M53696_IG01:
push rbp
push rbp
push rdi
push rdi
push rsi
push rsi
sub rsp, 64
sub rsp, 64
lea rbp, [rsp+50H]
lea rbp, [rsp+50H]
xor eax, eax
xor eax, eax
mov qword ptr [rbp-20H], rax
mov qword ptr [rbp-20H], rax
mov qword ptr [rbp-18H], rax
mov qword ptr [rbp-18H], rax
mov qword ptr [rbp-30H], rsp
mov qword ptr [rbp-30H], rsp
;; bbWeight=1 PerfScore 7.00
;; bbWeight=1 PerfScore 7.00
G_M53696_IG02:
G_M53696_IG02:
mov rcx, 0xD1FFAB1E
mov rcx, 0xD1FFAB1E
mov edx, 61
mov edx, 61
call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov rcx, 0xD1FFAB1E
mov rcx, 0xD1FFAB1E
mov rcx, gword ptr [rcx]
mov rcx, gword ptr [rcx]
Kopieren
Kopiert
Kopieren
Kopiert
mov
r11, 0xD1FFAB1E
cmp
dword ptr [rcx], ecx
call [
IEnumerable
`1:
GetEnumerator():IEnumerator`1:this]
call [
ConditionalWeakTable`2:System.Collections.Generic.
IEnumerable
<System.Collections.Generic.KeyValuePair<TKey,TValue>>.
GetEnumerator():IEnumerator`1:this]
mov rsi, rax
mov rsi, rax
mov gword ptr [rbp-28H], rsi
mov gword ptr [rbp-28H], rsi
Kopieren
Kopiert
Kopieren
Kopiert
;; bbWeight=1 PerfScore
8.25
;; bbWeight=1 PerfScore
10.00
G_M53696_IG03:
G_M53696_IG03:
mov rcx, rsi
mov rcx, rsi
mov r11, 0xD1FFAB1E
mov r11, 0xD1FFAB1E
call [IEnumerator:MoveNext():bool:this]
call [IEnumerator:MoveNext():bool:this]
test eax, eax
test eax, eax
je SHORT G_M53696_IG05
je SHORT G_M53696_IG05
;; bbWeight=1 PerfScore 4.75
;; bbWeight=1 PerfScore 4.75
G_M53696_IG04:
G_M53696_IG04:
lea rdx, bword ptr [rbp-20H]
lea rdx, bword ptr [rbp-20H]
mov rcx, rsi
mov rcx, rsi
mov r11, 0xD1FFAB1E
mov r11, 0xD1FFAB1E
call [IEnumerator`1:get_Current():KeyValuePair`2:this]
call [IEnumerator`1:get_Current():KeyValuePair`2:this]
mov rdi, gword ptr [rbp-20H]
mov rdi, gword ptr [rbp-20H]
mov rcx, gword ptr [rdi+24]
mov rcx, gword ptr [rdi+24]
cmp dword ptr [rcx], ecx
cmp dword ptr [rcx], ecx
call [ConcurrentDictionary`2:Clear():this]
call [ConcurrentDictionary`2:Clear():this]
xor rcx, rcx
xor rcx, rcx
mov gword ptr [rdi+32], rcx
mov gword ptr [rdi+32], rcx
mov rcx, rsi
mov rcx, rsi
mov r11, 0xD1FFAB1E
mov r11, 0xD1FFAB1E
call [IEnumerator:MoveNext():bool:this]
call [IEnumerator:MoveNext():bool:this]
test eax, eax
test eax, eax
jne SHORT G_M53696_IG04
jne SHORT G_M53696_IG04
;; bbWeight=4 PerfScore 72.00
;; bbWeight=4 PerfScore 72.00
G_M53696_IG05:
G_M53696_IG05:
mov rcx, rsi
mov rcx, rsi
mov r11, 0xD1FFAB1E
mov r11, 0xD1FFAB1E
call [IDisposable:Dispose():this]
call [IDisposable:Dispose():this]
nop
nop
;; bbWeight=1 PerfScore 3.75
;; bbWeight=1 PerfScore 3.75
G_M53696_IG06:
G_M53696_IG06:
add rsp, 64
add rsp, 64
pop rsi
pop rsi
pop rdi
pop rdi
pop rbp
pop rbp
ret
ret
;; bbWeight=1 PerfScore 2.75
;; bbWeight=1 PerfScore 2.75
G_M53696_IG07:
G_M53696_IG07:
push rbp
push rbp
push rdi
push rdi
push rsi
push rsi
sub rsp, 48
sub rsp, 48
mov rbp, qword ptr [rcx+32]
mov rbp, qword ptr [rcx+32]
mov qword ptr [rsp+20H], rbp
mov qword ptr [rsp+20H], rbp
lea rbp, [rbp+50H]
lea rbp, [rbp+50H]
;; bbWeight=0 PerfScore 0.00
;; bbWeight=0 PerfScore 0.00
G_M53696_IG08:
G_M53696_IG08:
cmp gword ptr [rbp-28H], 0
cmp gword ptr [rbp-28H], 0
je SHORT G_M53696_IG09
je SHORT G_M53696_IG09
mov rcx, gword ptr [rbp-28H]
mov rcx, gword ptr [rbp-28H]
mov r11, 0xD1FFAB1E
mov r11, 0xD1FFAB1E
call [IDisposable:Dispose():this]
call [IDisposable:Dispose():this]
;; bbWeight=0 PerfScore 0.00
;; bbWeight=0 PerfScore 0.00
G_M53696_IG09:
G_M53696_IG09:
nop
nop
;; bbWeight=0 PerfScore 0.00
;; bbWeight=0 PerfScore 0.00
G_M53696_IG10:
G_M53696_IG10:
add rsp, 48
add rsp, 48
pop rsi
pop rsi
pop rdi
pop rdi
pop rbp
pop rbp
ret
ret
;; bbWeight=0 PerfScore 0.00
;; bbWeight=0 PerfScore 0.00
Kopieren
Kopiert
Kopieren
Kopiert
; Total bytes of code
257
, prolog size 26, PerfScore 12
4.20
, instruction count 65, allocated bytes for code
257
(MethodHash=ded42e3f) for method JsonSerializerOptionsUpdateHandler:ClearCache(ref)
; Total bytes of code
249
, prolog size 26, PerfScore 12
5.15
, instruction count 65, allocated bytes for code
249
(MethodHash=ded42e3f) for method JsonSerializerOptionsUpdateHandler:ClearCache(ref)
; ============================================================
; ============================================================
Gespeicherte Diffs
Originaltext
Datei öffnen
; Assembly listing for method JsonSerializerOptionsUpdateHandler:ClearCache(ref) ; Emitting BLENDED_CODE for X64 CPU with AVX - Windows ; optimized code ; rbp based frame ; fully interruptible ; No PGO data ; 0 inlinees with PGO data; 4 single block inlinees; 0 inlinees without PGO data ; Final local variable assignments ; ;* V00 arg0 [V00 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def ; V01 loc0 [V01,T01] ( 7, 10 ) ref -> [rbp-28H] class-hnd EH-live single-def ; V02 loc1 [V02 ] ( 2, 8 ) struct (16) [rbp-20H] do-not-enreg[XSB] must-init addr-exposed ld-addr-op ; V03 OutArgs [V03 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace" ; V04 tmp1 [V04,T00] ( 3, 24 ) ref -> rdi class-hnd "Inlining Arg" ; V05 tmp2 [V05 ] ( 2, 8 ) ref -> [rbp-20H] do-not-enreg[X] addr-exposed V02.key(offs=0x00) P-DEP "field V02.key (fldOffset=0x0)" ; V06 tmp3 [V06 ] ( 1, 4 ) ref -> [rbp-18H] do-not-enreg[X] addr-exposed V02.value(offs=0x08) P-DEP "field V02.value (fldOffset=0x8)" ; V07 tmp4 [V07,T02] ( 2, 4 ) ref -> rcx single-def "argument with side effect" ; V08 PSPSym [V08 ] ( 1, 1 ) long -> [rbp-30H] do-not-enreg[X] addr-exposed "PSPSym" ; V09 tmp6 [V09,T03] ( 2, 2 ) ref -> rsi "optAddCopies" ; ; Lcl frame size = 64 G_M53696_IG01: push rbp push rdi push rsi sub rsp, 64 lea rbp, [rsp+50H] xor eax, eax mov qword ptr [rbp-20H], rax mov qword ptr [rbp-18H], rax mov qword ptr [rbp-30H], rsp ;; bbWeight=1 PerfScore 7.00 G_M53696_IG02: mov rcx, 0xD1FFAB1E mov edx, 61 call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE mov rcx, 0xD1FFAB1E mov rcx, gword ptr [rcx] mov r11, 0xD1FFAB1E call [IEnumerable`1:GetEnumerator():IEnumerator`1:this] mov rsi, rax mov gword ptr [rbp-28H], rsi ;; bbWeight=1 PerfScore 8.25 G_M53696_IG03: mov rcx, rsi mov r11, 0xD1FFAB1E call [IEnumerator:MoveNext():bool:this] test eax, eax je SHORT G_M53696_IG05 ;; bbWeight=1 PerfScore 4.75 G_M53696_IG04: lea rdx, bword ptr [rbp-20H] mov rcx, rsi mov r11, 0xD1FFAB1E call [IEnumerator`1:get_Current():KeyValuePair`2:this] mov rdi, gword ptr [rbp-20H] mov rcx, gword ptr [rdi+24] cmp dword ptr [rcx], ecx call [ConcurrentDictionary`2:Clear():this] xor rcx, rcx mov gword ptr [rdi+32], rcx mov rcx, rsi mov r11, 0xD1FFAB1E call [IEnumerator:MoveNext():bool:this] test eax, eax jne SHORT G_M53696_IG04 ;; bbWeight=4 PerfScore 72.00 G_M53696_IG05: mov rcx, rsi mov r11, 0xD1FFAB1E call [IDisposable:Dispose():this] nop ;; bbWeight=1 PerfScore 3.75 G_M53696_IG06: add rsp, 64 pop rsi pop rdi pop rbp ret ;; bbWeight=1 PerfScore 2.75 G_M53696_IG07: push rbp push rdi push rsi sub rsp, 48 mov rbp, qword ptr [rcx+32] mov qword ptr [rsp+20H], rbp lea rbp, [rbp+50H] ;; bbWeight=0 PerfScore 0.00 G_M53696_IG08: cmp gword ptr [rbp-28H], 0 je SHORT G_M53696_IG09 mov rcx, gword ptr [rbp-28H] mov r11, 0xD1FFAB1E call [IDisposable:Dispose():this] ;; bbWeight=0 PerfScore 0.00 G_M53696_IG09: nop ;; bbWeight=0 PerfScore 0.00 G_M53696_IG10: add rsp, 48 pop rsi pop rdi pop rbp ret ;; bbWeight=0 PerfScore 0.00 ; Total bytes of code 257, prolog size 26, PerfScore 124.20, instruction count 65, allocated bytes for code 257 (MethodHash=ded42e3f) for method JsonSerializerOptionsUpdateHandler:ClearCache(ref) ; ============================================================
Bearbeitung
Datei öffnen
; Assembly listing for method JsonSerializerOptionsUpdateHandler:ClearCache(ref) ; Emitting BLENDED_CODE for X64 CPU with AVX - Windows ; optimized code ; rbp based frame ; fully interruptible ; No PGO data ; 0 inlinees with PGO data; 4 single block inlinees; 0 inlinees without PGO data ; Final local variable assignments ; ;* V00 arg0 [V00 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def ; V01 loc0 [V01,T01] ( 7, 10 ) ref -> [rbp-28H] class-hnd EH-live single-def ; V02 loc1 [V02 ] ( 2, 8 ) struct (16) [rbp-20H] do-not-enreg[XSB] must-init addr-exposed ld-addr-op ; V03 OutArgs [V03 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace" ; V04 tmp1 [V04,T00] ( 3, 24 ) ref -> rdi class-hnd "Inlining Arg" ; V05 tmp2 [V05 ] ( 2, 8 ) ref -> [rbp-20H] do-not-enreg[X] addr-exposed V02.key(offs=0x00) P-DEP "field V02.key (fldOffset=0x0)" ; V06 tmp3 [V06 ] ( 1, 4 ) ref -> [rbp-18H] do-not-enreg[X] addr-exposed V02.value(offs=0x08) P-DEP "field V02.value (fldOffset=0x8)" ; V07 PSPSym [V07 ] ( 1, 1 ) long -> [rbp-30H] do-not-enreg[X] addr-exposed "PSPSym" ; V08 tmp5 [V08,T02] ( 2, 2 ) ref -> rsi "optAddCopies" ; ; Lcl frame size = 64 G_M53696_IG01: push rbp push rdi push rsi sub rsp, 64 lea rbp, [rsp+50H] xor eax, eax mov qword ptr [rbp-20H], rax mov qword ptr [rbp-18H], rax mov qword ptr [rbp-30H], rsp ;; bbWeight=1 PerfScore 7.00 G_M53696_IG02: mov rcx, 0xD1FFAB1E mov edx, 61 call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE mov rcx, 0xD1FFAB1E mov rcx, gword ptr [rcx] cmp dword ptr [rcx], ecx call [ConditionalWeakTable`2:System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>>.GetEnumerator():IEnumerator`1:this] mov rsi, rax mov gword ptr [rbp-28H], rsi ;; bbWeight=1 PerfScore 10.00 G_M53696_IG03: mov rcx, rsi mov r11, 0xD1FFAB1E call [IEnumerator:MoveNext():bool:this] test eax, eax je SHORT G_M53696_IG05 ;; bbWeight=1 PerfScore 4.75 G_M53696_IG04: lea rdx, bword ptr [rbp-20H] mov rcx, rsi mov r11, 0xD1FFAB1E call [IEnumerator`1:get_Current():KeyValuePair`2:this] mov rdi, gword ptr [rbp-20H] mov rcx, gword ptr [rdi+24] cmp dword ptr [rcx], ecx call [ConcurrentDictionary`2:Clear():this] xor rcx, rcx mov gword ptr [rdi+32], rcx mov rcx, rsi mov r11, 0xD1FFAB1E call [IEnumerator:MoveNext():bool:this] test eax, eax jne SHORT G_M53696_IG04 ;; bbWeight=4 PerfScore 72.00 G_M53696_IG05: mov rcx, rsi mov r11, 0xD1FFAB1E call [IDisposable:Dispose():this] nop ;; bbWeight=1 PerfScore 3.75 G_M53696_IG06: add rsp, 64 pop rsi pop rdi pop rbp ret ;; bbWeight=1 PerfScore 2.75 G_M53696_IG07: push rbp push rdi push rsi sub rsp, 48 mov rbp, qword ptr [rcx+32] mov qword ptr [rsp+20H], rbp lea rbp, [rbp+50H] ;; bbWeight=0 PerfScore 0.00 G_M53696_IG08: cmp gword ptr [rbp-28H], 0 je SHORT G_M53696_IG09 mov rcx, gword ptr [rbp-28H] mov r11, 0xD1FFAB1E call [IDisposable:Dispose():this] ;; bbWeight=0 PerfScore 0.00 G_M53696_IG09: nop ;; bbWeight=0 PerfScore 0.00 G_M53696_IG10: add rsp, 48 pop rsi pop rdi pop rbp ret ;; bbWeight=0 PerfScore 0.00 ; Total bytes of code 249, prolog size 26, PerfScore 125.15, instruction count 65, allocated bytes for code 249 (MethodHash=ded42e3f) for method JsonSerializerOptionsUpdateHandler:ClearCache(ref) ; ============================================================
Unterschied finden