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 2 mois
Le diff n'expire jamais
Effacer
Exporter
Partager
Expliquer
123 suppressions
Lignes
Total
Supprimé
Caractères
Total
Supprimé
Pour continuer à utiliser cette fonctionnalité, passez à
Diff
checker
Pro
Voir les prix
110 lignes
Copier tout
82 ajouts
Lignes
Total
Ajouté
Caractères
Total
Ajouté
Pour continuer à utiliser cette fonctionnalité, passez à
Diff
checker
Pro
Voir les prix
75 lignes
Copier tout
Copier
Copié
Copier
Copié
; Method Program:DangerousMakeOnesComplement
(System.Span`1[nuint]) (FullOpts)
; Method Program:DangerousMakeOnesComplement
2
(System.Span`1[nuint]) (FullOpts)
G_
M50784
_IG01: ;; offset=0x0000
G_
M34898
_IG01: ;; offset=0x0000
sub rsp, 40
;; size=
0
bbWeight=1 PerfScore 0.
00
;; size=
4
bbWeight=1 PerfScore 0.
25
Copier
Copié
Copier
Copié
G_
M50784
_IG02: ;; offset=0x000
4
G_
M34898
_IG02: ;; offset=0x000
0
mov rax, bword ptr [rcx]
mov rax, bword ptr [rcx]
mov ecx, dword ptr [rcx+0x08]
mov ecx, dword ptr [rcx+0x08]
Copier
Copié
Copier
Copié
mov edx, ecx
xor r8d, r8d
cmp ecx, 8
cmp ecx, 8
Copier
Copié
Copier
Copié
jl SHORT G_
M50784
_IG04
jl SHORT G_
M34898
_IG04
align [
12
bytes for IG03]
align [
5
bytes for IG03]
;; size=
28
bbWeight=1 PerfScore
6.00
;; size=
16
bbWeight=1 PerfScore
5.50
Copier
Copié
Copier
Copié
G_
M50784
_IG03: ;; offset=0x00
20
G_
M34898
_IG03: ;; offset=0x00
10
movsxd rcx, r8d
vpternlogq zmm0, zmm0, zmmword ptr [rax
], 85
vpternlogq zmm0, zmm0, zmmword ptr [rax
+8*rcx
], 85
vmovups zmmword ptr [rax
], zmm0
vmovups zmmword ptr [rax
+8*rcx
], zmm0
add
rax, 64
add
r8d, 8
add
ecx,
-8
mov ecx, edx
sub
ecx,
r8d
cmp ecx, 8
cmp ecx, 8
Copier
Copié
Copier
Copié
jge SHORT G_
M50784
_IG03
jge SHORT G_
M34898
_IG03
;; size=
32
bbWeight=4 PerfScore
37
.00
;; size=
25
bbWeight=4 PerfScore
35
.00
Copier
Copié
Copier
Copié
G_
M50784
_IG04: ;; offset=0x00
40
G_
M34898
_IG04: ;; offset=0x00
29
mov ecx, edx
sub ecx, r8d
cmp ecx, 4
cmp ecx, 4
Copier
Copié
Copier
Copié
jl SHORT G_
M50784
_IG06
jl SHORT G_
M34898
_IG06
align [
6
bytes for IG05]
align [
2
bytes for IG05]
;; size=
16
bbWeight=0.50 PerfScore
1.00
;; size=
7
bbWeight=0.50 PerfScore
0.75
Copier
Copié
Copier
Copié
G_
M50784
_IG05: ;; offset=0x00
50
G_
M34898
_IG05: ;; offset=0x00
30
movsxd rcx, r8d
vpternlogq ymm0, ymm0, ymmword ptr [rax
], 85
vpternlogq ymm0, ymm0, ymmword ptr [rax
+8*rcx
], 85
vmovups ymmword ptr [rax
], ymm0
vmovups ymmword ptr [rax
+8*rcx
], ymm0
add
rax, 32
add
r8d, 4
add
ecx,
-4
mov ecx, edx
sub
ecx,
r8d
cmp ecx, 4
cmp ecx, 4
Copier
Copié
Copier
Copié
jge SHORT G_
M50784
_IG05
jge SHORT G_
M34898
_IG05
;; size=
30
bbWeight=4 PerfScore
29
.00
;; size=
23
bbWeight=4 PerfScore
27
.00
Copier
Copié
Copier
Copié
G_
M50784
_IG06: ;; offset=0x00
6E
G_
M34898
_IG06: ;; offset=0x00
47
mov ecx, edx
sub ecx, r8d
cmp ecx, 2
cmp ecx, 2
Copier
Copié
Copier
Copié
jl SHORT G_
M50784
_IG08
jl SHORT G_
M34898
_IG08
align [
8
bytes for IG07]
align [
4
bytes for IG07]
;; size=
18
bbWeight=0.50 PerfScore
1.00
;; size=
9
bbWeight=0.50 PerfScore
0.75
Copier
Copié
Copier
Copié
G_
M50784
_IG07: ;; offset=0x00
80
G_
M34898
_IG07: ;; offset=0x00
50
movsxd rcx, r8d
vpternlogq xmm0, xmm0, xmmword ptr [rax
], 85
vpternlogq xmm0, xmm0, xmmword ptr [rax
+8*rcx
], 85
vmovups xmmword ptr [rax
], xmm0
vmovups xmmword ptr [rax
+8*rcx
], xmm0
add
rax, 16
add
r8d, 2
add
ecx,
-2
mov ecx, edx
sub
ecx,
r8d
cmp ecx, 2
cmp ecx, 2
Copier
Copié
Copier
Copié
jge SHORT G_
M50784
_IG07
jge SHORT G_
M34898
_IG07
;; size=
30
bbWeight=4 PerfScore
25
.00
;; size=
23
bbWeight=4 PerfScore
23
.00
Copier
Copié
Copier
Copié
G_
M50784
_IG08: ;; offset=0x00
9E
G_
M34898
_IG08: ;; offset=0x00
67
cmp
r8d
, e
d
x
test
ecx
, e
c
x
j
g
e
SHORT G_
M50784
_IG11
j
e
SHORT G_
M34898
_IG11
;; size=
5
bbWeight=
0.50
PerfScore
0.62
;; size=
4
bbWeight=
1
PerfScore
1.25
Copier
Copié
Copier
Copié
G_
M50784
_IG09: ;; offset=0x00
A3
G_
M34898
_IG09: ;; offset=0x00
6B
test r8d, r8d
xor
edx, edx
jl
SHORT G_M50784_IG12
align [0 bytes for IG10]
align [0 bytes for IG10]
Copier
Copié
Copier
Copié
;; size=
5
bbWeight=0.
25
PerfScore 0.
31
;; size=
2
bbWeight=0.
50
PerfScore 0.
12
Copier
Copié
Copier
Copié
G_
M50784
_IG10: ;; offset=0x00
A8
G_
M34898
_IG10: ;; offset=0x00
6D
mov ecx, r8d
not qword ptr [rax+
rd
x]
not qword ptr [rax+
8*rc
x]
add
r
dx, 8
inc
r
8d
dec
ec
x
cmp
r8d, ed
x
jne
SHORT G_
M34898
_IG10
jl
SHORT G_
M50784
_IG10
;; size=
12
bbWeight=3.96 PerfScore
17.82
;; size=
15
bbWeight=3.96 PerfScore
18.81
Copier
Copié
Copier
Copié
G_
M50784
_IG11: ;; offset=0x00
B7
G_
M34898
_IG11: ;; offset=0x00
79
vzeroupper
vzeroupper
Copier
Copié
Copier
Copié
add rsp, 40
ret
ret
Copier
Copié
Copier
Copié
;; size=
8
bbWeight=1 PerfScore 2.
25
;; size=
4
bbWeight=1 PerfScore 2.
00
; Total bytes of code:
125
G_M50784_IG12: ;; offset=0x00BF
cmp r8d, edx
jae SHORT G_M50784_IG13
mov ecx, r8d
mov r10d, r8d
mov r10, qword ptr [rax+8*r10]
not r10
mov qword ptr [rax+8*rcx], r10
inc r8d
cmp r8d, edx
jl SHORT G_M50784_IG12
jmp SHORT G_M50784_IG11
;; size=32 bbWeight=0.04 PerfScore 0.34
G_M50784_IG13: ;; offset=0x00DF
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
; Total bytes of code:
229
Différences enregistrées
Texte d'origine
Ouvrir un fichier
; Method Program:DangerousMakeOnesComplement(System.Span`1[nuint]) (FullOpts) G_M50784_IG01: ;; offset=0x0000 sub rsp, 40 ;; size=4 bbWeight=1 PerfScore 0.25 G_M50784_IG02: ;; offset=0x0004 mov rax, bword ptr [rcx] mov ecx, dword ptr [rcx+0x08] mov edx, ecx xor r8d, r8d cmp ecx, 8 jl SHORT G_M50784_IG04 align [12 bytes for IG03] ;; size=28 bbWeight=1 PerfScore 6.00 G_M50784_IG03: ;; offset=0x0020 movsxd rcx, r8d vpternlogq zmm0, zmm0, zmmword ptr [rax+8*rcx], 85 vmovups zmmword ptr [rax+8*rcx], zmm0 add r8d, 8 mov ecx, edx sub ecx, r8d cmp ecx, 8 jge SHORT G_M50784_IG03 ;; size=32 bbWeight=4 PerfScore 37.00 G_M50784_IG04: ;; offset=0x0040 mov ecx, edx sub ecx, r8d cmp ecx, 4 jl SHORT G_M50784_IG06 align [6 bytes for IG05] ;; size=16 bbWeight=0.50 PerfScore 1.00 G_M50784_IG05: ;; offset=0x0050 movsxd rcx, r8d vpternlogq ymm0, ymm0, ymmword ptr [rax+8*rcx], 85 vmovups ymmword ptr [rax+8*rcx], ymm0 add r8d, 4 mov ecx, edx sub ecx, r8d cmp ecx, 4 jge SHORT G_M50784_IG05 ;; size=30 bbWeight=4 PerfScore 29.00 G_M50784_IG06: ;; offset=0x006E mov ecx, edx sub ecx, r8d cmp ecx, 2 jl SHORT G_M50784_IG08 align [8 bytes for IG07] ;; size=18 bbWeight=0.50 PerfScore 1.00 G_M50784_IG07: ;; offset=0x0080 movsxd rcx, r8d vpternlogq xmm0, xmm0, xmmword ptr [rax+8*rcx], 85 vmovups xmmword ptr [rax+8*rcx], xmm0 add r8d, 2 mov ecx, edx sub ecx, r8d cmp ecx, 2 jge SHORT G_M50784_IG07 ;; size=30 bbWeight=4 PerfScore 25.00 G_M50784_IG08: ;; offset=0x009E cmp r8d, edx jge SHORT G_M50784_IG11 ;; size=5 bbWeight=0.50 PerfScore 0.62 G_M50784_IG09: ;; offset=0x00A3 test r8d, r8d jl SHORT G_M50784_IG12 align [0 bytes for IG10] ;; size=5 bbWeight=0.25 PerfScore 0.31 G_M50784_IG10: ;; offset=0x00A8 mov ecx, r8d not qword ptr [rax+8*rcx] inc r8d cmp r8d, edx jl SHORT G_M50784_IG10 ;; size=15 bbWeight=3.96 PerfScore 18.81 G_M50784_IG11: ;; offset=0x00B7 vzeroupper add rsp, 40 ret ;; size=8 bbWeight=1 PerfScore 2.25 G_M50784_IG12: ;; offset=0x00BF cmp r8d, edx jae SHORT G_M50784_IG13 mov ecx, r8d mov r10d, r8d mov r10, qword ptr [rax+8*r10] not r10 mov qword ptr [rax+8*rcx], r10 inc r8d cmp r8d, edx jl SHORT G_M50784_IG12 jmp SHORT G_M50784_IG11 ;; size=32 bbWeight=0.04 PerfScore 0.34 G_M50784_IG13: ;; offset=0x00DF call CORINFO_HELP_RNGCHKFAIL int3 ;; size=6 bbWeight=0 PerfScore 0.00 ; Total bytes of code: 229
Texte modifié
Ouvrir un fichier
; Method Program:DangerousMakeOnesComplement2(System.Span`1[nuint]) (FullOpts) G_M34898_IG01: ;; offset=0x0000 ;; size=0 bbWeight=1 PerfScore 0.00 G_M34898_IG02: ;; offset=0x0000 mov rax, bword ptr [rcx] mov ecx, dword ptr [rcx+0x08] cmp ecx, 8 jl SHORT G_M34898_IG04 align [5 bytes for IG03] ;; size=16 bbWeight=1 PerfScore 5.50 G_M34898_IG03: ;; offset=0x0010 vpternlogq zmm0, zmm0, zmmword ptr [rax], 85 vmovups zmmword ptr [rax], zmm0 add rax, 64 add ecx, -8 cmp ecx, 8 jge SHORT G_M34898_IG03 ;; size=25 bbWeight=4 PerfScore 35.00 G_M34898_IG04: ;; offset=0x0029 cmp ecx, 4 jl SHORT G_M34898_IG06 align [2 bytes for IG05] ;; size=7 bbWeight=0.50 PerfScore 0.75 G_M34898_IG05: ;; offset=0x0030 vpternlogq ymm0, ymm0, ymmword ptr [rax], 85 vmovups ymmword ptr [rax], ymm0 add rax, 32 add ecx, -4 cmp ecx, 4 jge SHORT G_M34898_IG05 ;; size=23 bbWeight=4 PerfScore 27.00 G_M34898_IG06: ;; offset=0x0047 cmp ecx, 2 jl SHORT G_M34898_IG08 align [4 bytes for IG07] ;; size=9 bbWeight=0.50 PerfScore 0.75 G_M34898_IG07: ;; offset=0x0050 vpternlogq xmm0, xmm0, xmmword ptr [rax], 85 vmovups xmmword ptr [rax], xmm0 add rax, 16 add ecx, -2 cmp ecx, 2 jge SHORT G_M34898_IG07 ;; size=23 bbWeight=4 PerfScore 23.00 G_M34898_IG08: ;; offset=0x0067 test ecx, ecx je SHORT G_M34898_IG11 ;; size=4 bbWeight=1 PerfScore 1.25 G_M34898_IG09: ;; offset=0x006B xor edx, edx align [0 bytes for IG10] ;; size=2 bbWeight=0.50 PerfScore 0.12 G_M34898_IG10: ;; offset=0x006D not qword ptr [rax+rdx] add rdx, 8 dec ecx jne SHORT G_M34898_IG10 ;; size=12 bbWeight=3.96 PerfScore 17.82 G_M34898_IG11: ;; offset=0x0079 vzeroupper ret ;; size=4 bbWeight=1 PerfScore 2.00 ; Total bytes of code: 125
Trouver la différence