Diff
checker
Texte
Texte
Images
Documents
Excel
Dossiers
Legal
Enterprise
Application de bureau
Prix
Se connecter
Télécharger Diffchecker Desktop
Comparer le texte
Trouver la différence entre deux fichiers texte
Outils
Historique
Éditeur live
Cacher identiques
Sans retour à la ligne
Vue
Divisé
Unifié
Niveau de précision
Intelligent
Mot
Caractère
Coloration syntaxique
Choisir la syntaxe
Ignorer
Transformer le texte
Aller au premier écart
Modifier l'entrée
Diffchecker Desktop
La façon la plus sécurisée d'utiliser Diffchecker. Obtenez l'application Diffchecker Desktop : vos diffs ne quittent jamais votre ordinateur !
Obtenir Desktop
Untitled Diff
Créé
il y a 4 ans
Le diff n'expire jamais
Effacer
Exporter
Partager
Expliquer
49 suppressions
Lignes
Total
Supprimé
Caractères
Total
Supprimé
Pour continuer à utiliser cette fonctionnalité, passez à
Diff
checker
Pro
Voir les prix
55 lignes
Copier tout
50 ajouts
Lignes
Total
Ajouté
Caractères
Total
Ajouté
Pour continuer à utiliser cette fonctionnalité, passez à
Diff
checker
Pro
Voir les prix
57 lignes
Copier tout
; Assembly listing for method Pa:IsAssignableTo():bool
; Assembly listing for method Pa:IsAssignableTo():bool
; Emitting BLENDED_CODE for X64 CPU with AVX - Windows
; Emitting BLENDED_CODE for X64 CPU with AVX - Windows
; optimized code
; optimized code
; rsp based frame
; rsp based frame
; partially interruptible
; partially interruptible
; No PGO data
; No PGO data
; 0 inlinees with PGO data; 0 single block inlinees; 1 inlinees without PGO data
; 0 inlinees with PGO data; 0 single block inlinees; 1 inlinees without PGO data
; Final local variable assignments
; Final local variable assignments
;
;
Copier
Copié
Copier
Copié
; V00 TypeCtx [V00,T00] (
4
, 4
) long ->
rcx
single-def
; V00 TypeCtx [V00,T00] (
5
, 4
.50
) long ->
rsi
single-def
; V01 OutArgs [V01 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace"
; V01 OutArgs [V01 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace"
Copier
Copié
Copier
Copié
; V02 tmp1 [V02,T0
4
] ( 3, 2 ) bool -> rax "Inline return value spill temp"
; V02 tmp1 [V02,T0
2
] ( 3, 2 ) bool -> rax "Inline return value spill temp"
; V03 tmp2 [V03,T0
1
] (
3
,
5
) ref ->
rax
class-hnd
single-def "
Inlining Arg
"
; V03 tmp2 [V03,T0
3
] (
2
,
2
) ref ->
rdi
single-def "
argument with side effect
"
; V04 tmp3 [V04,T0
3
] ( 2,
3
) ref -> rd
i
class-hnd
single-def "
Inlining Arg
"
; V04 tmp3 [V04,T0
4
] ( 2,
2
) ref -> rd
x
single-def "
argument with side effect
"
; V05 cse0 [V05,T0
2
] ( 3,
3
)
long
-> r
s
i "CSE - aggressive"
; V05 cse0 [V05,T0
1
] ( 3,
2.50
)
ref
-> r
d
i "CSE - aggressive"
;
;
; Lcl frame size = 40
; Lcl frame size = 40
G_M15054_IG01: ;; offset=0000H
G_M15054_IG01: ;; offset=0000H
57 push rdi
57 push rdi
56 push rsi
56 push rsi
4883EC28 sub rsp, 40
4883EC28 sub rsp, 40
48894C2420 mov qword ptr [rsp+20H], rcx
48894C2420 mov qword ptr [rsp+20H], rcx
Copier
Copié
Copier
Copié
;; size=
11
bbWeight=1 PerfScore 3.
25
488BF1 mov rsi, rcx
G_M15054_IG02: ;; offset=000
B
H
;; size=
14
bbWeight=1 PerfScore 3.
50
488B
71
38 mov
rsi
, qword ptr [
rcx
+56]
G_M15054_IG02: ;; offset=000
E
H
488B
0E
mov rcx, qword ptr [
rsi
]
488B
4E
38 mov
rcx
, qword ptr [
rsi
+56]
E839FE4F5F
call CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
488B
4908
mov rcx, qword ptr [
rcx+8
]
E8452B505F
call CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
488BF8 mov rdi, rax
488BF8 mov rdi, rax
Copier
Copié
Copier
Copié
488B4E08 mov rcx, qword ptr [rsi+8]
4885
FF
test
rdi, rdi
E82DFE4F5F call CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
4885
C0
test
rax, rax
7504 jne SHORT G_M15054_IG04
7504 jne SHORT G_M15054_IG04
Copier
Copié
Copier
Copié
;; size=
29
bbWeight=1 PerfScore
9
.50
;; size=
21
bbWeight=1 PerfScore
6
.50
G_M15054_IG03: ;; offset=002
8
H
G_M15054_IG03: ;; offset=002
3
H
33C0 xor eax, eax
33C0 xor eax, eax
Copier
Copié
Copier
Copié
EB0C
jmp SHORT G_M15054_IG05
EB18
jmp SHORT G_M15054_IG05
;; size=4 bbWeight=0.50 PerfScore 1.12
;; size=4 bbWeight=0.50 PerfScore 1.12
Copier
Copié
Copier
Copié
G_M15054_IG04: ;; offset=002
C
H
G_M15054_IG04: ;; offset=002
7
H
488B
C8 mov rcx, rax
488B
4E38 mov rcx, qword ptr [rsi+56]
488BD
7
mov rdx,
rdi
488B09 mov rcx, qword ptr [rcx]
FF15
58
8BE5FF call [System.RuntimeType:IsAssignableFrom(System.Type):bool:this]
E82D2B505F call CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE
;; size=
12
bbWeight=0.50 PerfScore
1.75
488BD
0
mov rdx,
rax
G_M15054_IG05: ;; offset=003
8
H
488BCF mov rcx,
rdi
FF15
89
8BE5FF call [System.RuntimeType:IsAssignableFrom(System.Type):bool:this]
;; size=
24
bbWeight=0.50 PerfScore
4.25
G_M15054_IG05: ;; offset=003
F
H
90 nop
90 nop
;; size=1 bbWeight=1 PerfScore 0.25
;; size=1 bbWeight=1 PerfScore 0.25
Copier
Copié
Copier
Copié
G_M15054_IG06: ;; offset=
0039H
G_M15054_IG06: ;; offset=
0040H
4883C428 add rsp, 40
4883C428 add rsp, 40
5E pop rsi
5E pop rsi
5F pop rdi
5F pop rdi
C3 ret
C3 ret
;; size=7 bbWeight=1 PerfScore 2.25
;; size=7 bbWeight=1 PerfScore 2.25
Copier
Copié
Copier
Copié
; Total bytes of code
64
, prolog size 11, PerfScore 24.
53
, instruction count
22
, allocated bytes for code
64
(MethodHash=e866c531) for method Pa:IsAssignableTo():bool
; Total bytes of code
71
, prolog size 11, PerfScore 24.
98
, instruction count
24
, allocated bytes for code
71
(MethodHash=e866c531) for method Pa:IsAssignableTo():bool
; ============================================================
; ============================================================
Différences enregistrées
Texte d'origine
Ouvrir un fichier
; Assembly listing for method Pa:IsAssignableTo():bool ; Emitting BLENDED_CODE for X64 CPU with AVX - Windows ; optimized code ; rsp based frame ; partially interruptible ; No PGO data ; 0 inlinees with PGO data; 0 single block inlinees; 1 inlinees without PGO data ; Final local variable assignments ; ; V00 TypeCtx [V00,T00] ( 4, 4 ) long -> rcx single-def ; V01 OutArgs [V01 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace" ; V02 tmp1 [V02,T04] ( 3, 2 ) bool -> rax "Inline return value spill temp" ; V03 tmp2 [V03,T01] ( 3, 5 ) ref -> rax class-hnd single-def "Inlining Arg" ; V04 tmp3 [V04,T03] ( 2, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" ; V05 cse0 [V05,T02] ( 3, 3 ) long -> rsi "CSE - aggressive" ; ; Lcl frame size = 40 G_M15054_IG01: ;; offset=0000H 57 push rdi 56 push rsi 4883EC28 sub rsp, 40 48894C2420 mov qword ptr [rsp+20H], rcx ;; size=11 bbWeight=1 PerfScore 3.25 G_M15054_IG02: ;; offset=000BH 488B7138 mov rsi, qword ptr [rcx+56] 488B0E mov rcx, qword ptr [rsi] E839FE4F5F call CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE 488BF8 mov rdi, rax 488B4E08 mov rcx, qword ptr [rsi+8] E82DFE4F5F call CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE 4885C0 test rax, rax 7504 jne SHORT G_M15054_IG04 ;; size=29 bbWeight=1 PerfScore 9.50 G_M15054_IG03: ;; offset=0028H 33C0 xor eax, eax EB0C jmp SHORT G_M15054_IG05 ;; size=4 bbWeight=0.50 PerfScore 1.12 G_M15054_IG04: ;; offset=002CH 488BC8 mov rcx, rax 488BD7 mov rdx, rdi FF15588BE5FF call [System.RuntimeType:IsAssignableFrom(System.Type):bool:this] ;; size=12 bbWeight=0.50 PerfScore 1.75 G_M15054_IG05: ;; offset=0038H 90 nop ;; size=1 bbWeight=1 PerfScore 0.25 G_M15054_IG06: ;; offset=0039H 4883C428 add rsp, 40 5E pop rsi 5F pop rdi C3 ret ;; size=7 bbWeight=1 PerfScore 2.25 ; Total bytes of code 64, prolog size 11, PerfScore 24.53, instruction count 22, allocated bytes for code 64 (MethodHash=e866c531) for method Pa:IsAssignableTo():bool ; ============================================================
Texte modifié
Ouvrir un fichier
; Assembly listing for method Pa:IsAssignableTo():bool ; Emitting BLENDED_CODE for X64 CPU with AVX - Windows ; optimized code ; rsp based frame ; partially interruptible ; No PGO data ; 0 inlinees with PGO data; 0 single block inlinees; 1 inlinees without PGO data ; Final local variable assignments ; ; V00 TypeCtx [V00,T00] ( 5, 4.50) long -> rsi single-def ; V01 OutArgs [V01 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace" ; V02 tmp1 [V02,T02] ( 3, 2 ) bool -> rax "Inline return value spill temp" ; V03 tmp2 [V03,T03] ( 2, 2 ) ref -> rdi single-def "argument with side effect" ; V04 tmp3 [V04,T04] ( 2, 2 ) ref -> rdx single-def "argument with side effect" ; V05 cse0 [V05,T01] ( 3, 2.50) ref -> rdi "CSE - aggressive" ; ; Lcl frame size = 40 G_M15054_IG01: ;; offset=0000H 57 push rdi 56 push rsi 4883EC28 sub rsp, 40 48894C2420 mov qword ptr [rsp+20H], rcx 488BF1 mov rsi, rcx ;; size=14 bbWeight=1 PerfScore 3.50 G_M15054_IG02: ;; offset=000EH 488B4E38 mov rcx, qword ptr [rsi+56] 488B4908 mov rcx, qword ptr [rcx+8] E8452B505F call CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE 488BF8 mov rdi, rax 4885FF test rdi, rdi 7504 jne SHORT G_M15054_IG04 ;; size=21 bbWeight=1 PerfScore 6.50 G_M15054_IG03: ;; offset=0023H 33C0 xor eax, eax EB18 jmp SHORT G_M15054_IG05 ;; size=4 bbWeight=0.50 PerfScore 1.12 G_M15054_IG04: ;; offset=0027H 488B4E38 mov rcx, qword ptr [rsi+56] 488B09 mov rcx, qword ptr [rcx] E82D2B505F call CORINFO_HELP_TYPEHANDLE_TO_RUNTIMETYPE 488BD0 mov rdx, rax 488BCF mov rcx, rdi FF15898BE5FF call [System.RuntimeType:IsAssignableFrom(System.Type):bool:this] ;; size=24 bbWeight=0.50 PerfScore 4.25 G_M15054_IG05: ;; offset=003FH 90 nop ;; size=1 bbWeight=1 PerfScore 0.25 G_M15054_IG06: ;; offset=0040H 4883C428 add rsp, 40 5E pop rsi 5F pop rdi C3 ret ;; size=7 bbWeight=1 PerfScore 2.25 ; Total bytes of code 71, prolog size 11, PerfScore 24.98, instruction count 24, allocated bytes for code 71 (MethodHash=e866c531) for method Pa:IsAssignableTo():bool ; ============================================================
Trouver la différence