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
Gleiches ausblenden
Zeilenumbruch aus
Ansicht
Zweispaltig
Einspaltig
Vergleichsgenauigkeit
Intelligent
Wort
Zeichen
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 3 Jahren
Diff läuft nie ab
Löschen
Exportieren
Teilen
Erklären
51 Entfernungen
Zeilen
Gesamt
Entfernt
Zeichen
Gesamt
Entfernt
Um diese Funktion weiterhin zu nutzen, aktualisiere auf
Diff
checker
Pro
Preise anzeigen
116 Zeilen
Kopieren
54 Hinzufügungen
Zeilen
Gesamt
Hinzugefügt
Zeichen
Gesamt
Hinzugefügt
Um diese Funktion weiterhin zu nutzen, aktualisiere auf
Diff
checker
Pro
Preise anzeigen
116 Zeilen
Kopieren
; 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
;
;
Kopieren
Kopiert
Kopieren
Kopiert
; 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"
Kopieren
Kopiert
Kopieren
Kopiert
; 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]
Kopieren
Kopiert
Kopieren
Kopiert
cmp ecx, dword ptr [rsi+18H]
jae SHORT G_M45441_IG06
lea rdx, bword ptr [rsi+10H]
lea rdx, bword ptr [rsi+10H]
Kopieren
Kopiert
Kopieren
Kopiert
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
Kopieren
Kopiert
Kopieren
Kopiert
;; 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]
Kopieren
Kopiert
Kopieren
Kopiert
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
Kopieren
Kopiert
Kopieren
Kopiert
;; size=
8
bbWeight=4 PerfScore
24
.00
;; size=
17
bbWeight=4 PerfScore
31
.00
G_M45441_IG08:
G_M45441_IG08:
Kopieren
Kopiert
Kopieren
Kopiert
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
Kopieren
Kopiert
Kopieren
Kopiert
;; 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
Kopieren
Kopiert
Kopieren
Kopiert
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
Kopieren
Kopiert
Kopieren
Kopiert
G_M45441_IG12:
call [CORINFO_HELP_RNGCHKFAIL]
int3
;; size=7 bbWeight=0 PerfScore 0.00
Kopieren
Kopiert
Kopieren
Kopiert
; 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)
; ============================================================
; ============================================================
Gespeicherte Diffs
Originaltext
Datei öffnen
; 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) ; ============================================================
Bearbeitung
Datei öffnen
; 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) ; ============================================================
Unterschied finden