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 ans
Le diff n'expire jamais
Effacer
Exporter
Partager
Expliquer
19 suppressions
Lignes
Total
Supprimé
Caractères
Total
Supprimé
Pour continuer à utiliser cette fonctionnalité, passez à
Diff
checker
Pro
Voir les prix
298 lignes
Copier tout
20 ajouts
Lignes
Total
Ajouté
Caractères
Total
Ajouté
Pour continuer à utiliser cette fonctionnalité, passez à
Diff
checker
Pro
Voir les prix
298 lignes
Copier tout
; Assembly listing for method Program:TestPInvoke() (Tier0)
; Assembly listing for method Program:TestPInvoke() (Tier0)
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Tier0 code
; Tier0 code
; ebp based frame
; ebp based frame
; partially interruptible
; partially interruptible
G_M000_IG01:
G_M000_IG01:
push ebp
push ebp
mov ebp, esp
mov ebp, esp
push edi
push edi
push esi
push esi
push ebx
push ebx
sub esp, 36
sub esp, 36
vzeroupper
vzeroupper
G_M000_IG02:
G_M000_IG02:
lea edi, [ebp-0x2C]
lea edi, [ebp-0x2C]
call CORINFO_HELP_INIT_PINVOKE_FRAME
call CORINFO_HELP_INIT_PINVOKE_FRAME
mov dword ptr [ebp-0x10], esi
mov dword ptr [ebp-0x10], esi
mov eax, ebp
mov eax, ebp
mov dword ptr [ebp-0x18], eax
mov dword ptr [ebp-0x18], eax
mov dword ptr [ebp-0x24], 0xD1FFAB1E
mov dword ptr [ebp-0x24], 0xD1FFAB1E
mov eax, esp
mov eax, esp
mov dword ptr [ebp-0x20], eax
mov dword ptr [ebp-0x20], eax
lea eax, G_M000_IG04
lea eax, G_M000_IG04
mov dword ptr [ebp-0x1C], eax
mov dword ptr [ebp-0x1C], eax
mov eax, dword ptr [ebp-0x10]
mov eax, dword ptr [ebp-0x10]
mov byte ptr [eax+0x04], 0
mov byte ptr [eax+0x04], 0
G_M000_IG03:
G_M000_IG03:
call [Program:GetTickCount():uint]
call [Program:GetTickCount():uint]
G_M000_IG04:
G_M000_IG04:
mov eax, dword ptr [ebp-0x10]
mov eax, dword ptr [ebp-0x10]
mov byte ptr [eax+0x04], 1
mov byte ptr [eax+0x04], 1
cmp dword ptr [D1FFAB1EH], 0
cmp dword ptr [D1FFAB1EH], 0
je SHORT G_M000_IG05
je SHORT G_M000_IG05
call CORINFO_HELP_STOP_FOR_GC
call CORINFO_HELP_STOP_FOR_GC
G_M000_IG05:
G_M000_IG05:
xor eax, eax
xor eax, eax
mov dword ptr [ebp-0x1C], eax
mov dword ptr [ebp-0x1C], eax
mov eax, dword ptr [ebp-0x10]
mov eax, dword ptr [ebp-0x10]
Copier
Copié
Copier
Copié
mov edx,
b
word ptr [ebp-0x28]
mov edx,
d
word ptr [ebp-0x28]
mov dword ptr [eax+0x08], edx
mov dword ptr [eax+0x08], edx
G_M000_IG06:
G_M000_IG06:
lea esp, [ebp-0x0C]
lea esp, [ebp-0x0C]
pop ebx
pop ebx
pop esi
pop esi
pop edi
pop edi
pop ebp
pop ebp
ret
ret
; Total bytes of code 105
; Total bytes of code 105
; Assembly listing for method Program:TestPInvokeILStub() (Tier0)
; Assembly listing for method Program:TestPInvokeILStub() (Tier0)
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Tier0 code
; Tier0 code
; ebp based frame
; ebp based frame
; partially interruptible
; partially interruptible
G_M000_IG01:
G_M000_IG01:
push ebp
push ebp
mov ebp, esp
mov ebp, esp
vzeroupper
vzeroupper
G_M000_IG02:
G_M000_IG02:
call Program:GetTickCountILStub():uint
call Program:GetTickCountILStub():uint
G_M000_IG03:
G_M000_IG03:
pop ebp
pop ebp
ret
ret
; Total bytes of code 13
; Total bytes of code 13
; Assembly listing for method (dynamicClass):IL_STUB_PInvoke():uint (FullOpts)
; Assembly listing for method (dynamicClass):IL_STUB_PInvoke():uint (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Emitting BLENDED_CODE for X86 with AVX - Windows
; FullOpts code
; FullOpts code
; optimized code
; optimized code
; ebp based frame
; ebp based frame
; partially interruptible
; partially interruptible
; No PGO data
; No PGO data
G_M000_IG01:
G_M000_IG01:
push ebp
push ebp
mov ebp, esp
mov ebp, esp
push edi
push edi
push esi
push esi
push ebx
push ebx
Copier
Copié
Copier
Copié
sub esp,
36
sub esp,
40
mov
dword ptr [ebp-0x10]
, eax
mov
ebx
, eax
G_M000_IG02:
G_M000_IG02:
Copier
Copié
Copier
Copié
lea edi, [ebp-
0x2C
]
mov dword ptr [ebp-0x14], ebx
lea edi, [ebp-
0x30
]
call CORINFO_HELP_INIT_PINVOKE_FRAME
call CORINFO_HELP_INIT_PINVOKE_FRAME
mov eax, ebp
mov eax, ebp
Copier
Copié
Copier
Copié
mov dword ptr [ebp-0x1
8
], eax
mov dword ptr [ebp-0x1
C
], eax
call System.StubHelpers.StubHelpers:ClearLastError()
call System.StubHelpers.StubHelpers:ClearLastError()
Copier
Copié
Copier
Copié
mov eax, dword ptr [
ebp-0x10]
mov eax, dword ptr [
ebx
+0x10]
mov eax, dword ptr [eax
+0x10]
xor edx, edx
xor edx, edx
Copier
Copié
Copier
Copié
mov dword ptr [ebp-0x28], edx
mov edx, esp
mov dword ptr [ebp-0x24], edx
mov dword ptr [ebp-0x24], edx
Copier
Copié
Copier
Copié
mov
edx,
esp
lea
edx,
G_M000_IG04
mov dword ptr [ebp-0x20], edx
mov dword ptr [ebp-0x20], edx
Copier
Copié
Copier
Copié
lea edx, G_M000_IG04
mov dword ptr [ebp-0x1C], edx
mov byte ptr [esi+0x04], 0
mov byte ptr [esi+0x04], 0
G_M000_IG03:
G_M000_IG03:
call eax
call eax
G_M000_IG04:
G_M000_IG04:
mov edi, eax
mov edi, eax
mov byte ptr [esi+0x04], 1
mov byte ptr [esi+0x04], 1
cmp dword ptr [D1FFAB1EH], 0
cmp dword ptr [D1FFAB1EH], 0
je SHORT G_M000_IG05
je SHORT G_M000_IG05
call CORINFO_HELP_STOP_FOR_GC
call CORINFO_HELP_STOP_FOR_GC
G_M000_IG05:
G_M000_IG05:
xor eax, eax
xor eax, eax
Copier
Copié
Copier
Copié
mov dword ptr [ebp-
0x1C
], eax
mov dword ptr [ebp-
0x20
], eax
call System.StubHelpers.StubHelpers:SetLastError()
call System.StubHelpers.StubHelpers:SetLastError()
mov eax, edi
mov eax, edi
Copier
Copié
Copier
Copié
mov edx,
b
word ptr [ebp-0x2
8
]
mov edx,
d
word ptr [ebp-0x2
C
]
mov dword ptr [esi+0x08], edx
mov dword ptr [esi+0x08], edx
G_M000_IG06:
G_M000_IG06:
lea esp, [ebp-0x0C]
lea esp, [ebp-0x0C]
pop ebx
pop ebx
pop esi
pop esi
pop edi
pop edi
pop ebp
pop ebp
ret
ret
Copier
Copié
Copier
Copié
; Total bytes of code 10
7
; Total bytes of code 10
6
; Assembly listing for method Program:TestPInvoke() (Instrumented Tier0)
; Assembly listing for method Program:TestPInvoke() (Instrumented Tier0)
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Instrumented Tier0 code
; Instrumented Tier0 code
; ebp based frame
; ebp based frame
; partially interruptible
; partially interruptible
G_M000_IG01:
G_M000_IG01:
push ebp
push ebp
mov ebp, esp
mov ebp, esp
push edi
push edi
push esi
push esi
push ebx
push ebx
sub esp, 36
sub esp, 36
vzeroupper
vzeroupper
G_M000_IG02:
G_M000_IG02:
lea edi, [ebp-0x2C]
lea edi, [ebp-0x2C]
call CORINFO_HELP_INIT_PINVOKE_FRAME
call CORINFO_HELP_INIT_PINVOKE_FRAME
mov dword ptr [ebp-0x10], esi
mov dword ptr [ebp-0x10], esi
mov eax, ebp
mov eax, ebp
mov dword ptr [ebp-0x18], eax
mov dword ptr [ebp-0x18], eax
mov dword ptr [ebp-0x24], 0xD1FFAB1E
mov dword ptr [ebp-0x24], 0xD1FFAB1E
mov eax, esp
mov eax, esp
mov dword ptr [ebp-0x20], eax
mov dword ptr [ebp-0x20], eax
lea eax, G_M000_IG05
lea eax, G_M000_IG05
mov dword ptr [ebp-0x1C], eax
mov dword ptr [ebp-0x1C], eax
mov eax, dword ptr [ebp-0x10]
mov eax, dword ptr [ebp-0x10]
mov byte ptr [eax+0x04], 0
mov byte ptr [eax+0x04], 0
G_M000_IG03:
G_M000_IG03:
mov eax, 0xD1FFAB1E
mov eax, 0xD1FFAB1E
G_M000_IG04:
G_M000_IG04:
call eax ; Program:GetTickCount():uint
call eax ; Program:GetTickCount():uint
G_M000_IG05:
G_M000_IG05:
mov eax, dword ptr [ebp-0x10]
mov eax, dword ptr [ebp-0x10]
mov byte ptr [eax+0x04], 1
mov byte ptr [eax+0x04], 1
cmp dword ptr [D1FFAB1EH], 0
cmp dword ptr [D1FFAB1EH], 0
je SHORT G_M000_IG06
je SHORT G_M000_IG06
call CORINFO_HELP_STOP_FOR_GC
call CORINFO_HELP_STOP_FOR_GC
G_M000_IG06:
G_M000_IG06:
xor eax, eax
xor eax, eax
mov dword ptr [ebp-0x1C], eax
mov dword ptr [ebp-0x1C], eax
mov eax, dword ptr [ebp-0x10]
mov eax, dword ptr [ebp-0x10]
Copier
Copié
Copier
Copié
mov edx,
b
word ptr [ebp-0x28]
mov edx,
d
word ptr [ebp-0x28]
mov dword ptr [eax+0x08], edx
mov dword ptr [eax+0x08], edx
G_M000_IG07:
G_M000_IG07:
lea esp, [ebp-0x0C]
lea esp, [ebp-0x0C]
pop ebx
pop ebx
pop esi
pop esi
pop edi
pop edi
pop ebp
pop ebp
ret
ret
; Total bytes of code 106
; Total bytes of code 106
; Assembly listing for method Program:TestPInvokeILStub() (Instrumented Tier0)
; Assembly listing for method Program:TestPInvokeILStub() (Instrumented Tier0)
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Instrumented Tier0 code
; Instrumented Tier0 code
; ebp based frame
; ebp based frame
; partially interruptible
; partially interruptible
G_M000_IG01:
G_M000_IG01:
push ebp
push ebp
mov ebp, esp
mov ebp, esp
vzeroupper
vzeroupper
G_M000_IG02:
G_M000_IG02:
call Program:GetTickCountILStub():uint
call Program:GetTickCountILStub():uint
G_M000_IG03:
G_M000_IG03:
pop ebp
pop ebp
ret
ret
; Total bytes of code 13
; Total bytes of code 13
; Assembly listing for method Program:TestPInvoke() (Tier1)
; Assembly listing for method Program:TestPInvoke() (Tier1)
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Tier1 code
; Tier1 code
; optimized code
; optimized code
; ebp based frame
; ebp based frame
; partially interruptible
; partially interruptible
; No PGO data
; No PGO data
G_M000_IG01:
G_M000_IG01:
push ebp
push ebp
mov ebp, esp
mov ebp, esp
push edi
push edi
push esi
push esi
push ebx
push ebx
sub esp, 32
sub esp, 32
vzeroupper
vzeroupper
G_M000_IG02:
G_M000_IG02:
lea edi, [ebp-0x28]
lea edi, [ebp-0x28]
call CORINFO_HELP_INIT_PINVOKE_FRAME
call CORINFO_HELP_INIT_PINVOKE_FRAME
mov eax, ebp
mov eax, ebp
mov dword ptr [ebp-0x14], eax
mov dword ptr [ebp-0x14], eax
mov dword ptr [ebp-0x20], 0xD1FFAB1E
mov dword ptr [ebp-0x20], 0xD1FFAB1E
mov eax, esp
mov eax, esp
mov dword ptr [ebp-0x1C], eax
mov dword ptr [ebp-0x1C], eax
lea eax, G_M000_IG05
lea eax, G_M000_IG05
mov dword ptr [ebp-0x18], eax
mov dword ptr [ebp-0x18], eax
mov byte ptr [esi+0x04], 0
mov byte ptr [esi+0x04], 0
G_M000_IG03:
G_M000_IG03:
mov eax, 0xD1FFAB1E
mov eax, 0xD1FFAB1E
G_M000_IG04:
G_M000_IG04:
call eax ; Program:GetTickCount():uint
call eax ; Program:GetTickCount():uint
G_M000_IG05:
G_M000_IG05:
mov byte ptr [esi+0x04], 1
mov byte ptr [esi+0x04], 1
cmp dword ptr [D1FFAB1EH], 0
cmp dword ptr [D1FFAB1EH], 0
je SHORT G_M000_IG06
je SHORT G_M000_IG06
call CORINFO_HELP_STOP_FOR_GC
call CORINFO_HELP_STOP_FOR_GC
G_M000_IG06:
G_M000_IG06:
xor eax, eax
xor eax, eax
mov dword ptr [ebp-0x18], eax
mov dword ptr [ebp-0x18], eax
Copier
Copié
Copier
Copié
mov eax,
b
word ptr [ebp-0x24]
mov eax,
d
word ptr [ebp-0x24]
mov dword ptr [esi+0x08], eax
mov dword ptr [esi+0x08], eax
G_M000_IG07:
G_M000_IG07:
lea esp, [ebp-0x0C]
lea esp, [ebp-0x0C]
pop ebx
pop ebx
pop esi
pop esi
pop edi
pop edi
pop ebp
pop ebp
ret
ret
; Total bytes of code 94
; Total bytes of code 94
; Assembly listing for method Program:TestPInvokeILStub() (Tier1)
; Assembly listing for method Program:TestPInvokeILStub() (Tier1)
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Emitting BLENDED_CODE for X86 with AVX - Windows
; Tier1 code
; Tier1 code
; optimized code
; optimized code
; ebp based frame
; ebp based frame
; partially interruptible
; partially interruptible
; No PGO data
; No PGO data
G_M000_IG01:
G_M000_IG01:
push ebp
push ebp
mov ebp, esp
mov ebp, esp
vzeroupper
vzeroupper
G_M000_IG02:
G_M000_IG02:
call Program:GetTickCountILStub():uint
call Program:GetTickCountILStub():uint
G_M000_IG03:
G_M000_IG03:
pop ebp
pop ebp
ret
ret
; Total bytes of code 13
; Total bytes of code 13
Copier
Copié
Copier
Copié
Bench:
5566.17
ms
Bench:
5547.76
ms
BenchILStub: 105
45.62
ms
BenchILStub: 105
55.45
ms
Différences enregistrées
Texte d'origine
Ouvrir un fichier
; Assembly listing for method Program:TestPInvoke() (Tier0) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Tier0 code ; ebp based frame ; partially interruptible G_M000_IG01: push ebp mov ebp, esp push edi push esi push ebx sub esp, 36 vzeroupper G_M000_IG02: lea edi, [ebp-0x2C] call CORINFO_HELP_INIT_PINVOKE_FRAME mov dword ptr [ebp-0x10], esi mov eax, ebp mov dword ptr [ebp-0x18], eax mov dword ptr [ebp-0x24], 0xD1FFAB1E mov eax, esp mov dword ptr [ebp-0x20], eax lea eax, G_M000_IG04 mov dword ptr [ebp-0x1C], eax mov eax, dword ptr [ebp-0x10] mov byte ptr [eax+0x04], 0 G_M000_IG03: call [Program:GetTickCount():uint] G_M000_IG04: mov eax, dword ptr [ebp-0x10] mov byte ptr [eax+0x04], 1 cmp dword ptr [D1FFAB1EH], 0 je SHORT G_M000_IG05 call CORINFO_HELP_STOP_FOR_GC G_M000_IG05: xor eax, eax mov dword ptr [ebp-0x1C], eax mov eax, dword ptr [ebp-0x10] mov edx, bword ptr [ebp-0x28] mov dword ptr [eax+0x08], edx G_M000_IG06: lea esp, [ebp-0x0C] pop ebx pop esi pop edi pop ebp ret ; Total bytes of code 105 ; Assembly listing for method Program:TestPInvokeILStub() (Tier0) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Tier0 code ; ebp based frame ; partially interruptible G_M000_IG01: push ebp mov ebp, esp vzeroupper G_M000_IG02: call Program:GetTickCountILStub():uint G_M000_IG03: pop ebp ret ; Total bytes of code 13 ; Assembly listing for method (dynamicClass):IL_STUB_PInvoke():uint (FullOpts) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; FullOpts code ; optimized code ; ebp based frame ; partially interruptible ; No PGO data G_M000_IG01: push ebp mov ebp, esp push edi push esi push ebx sub esp, 36 mov dword ptr [ebp-0x10], eax G_M000_IG02: lea edi, [ebp-0x2C] call CORINFO_HELP_INIT_PINVOKE_FRAME mov eax, ebp mov dword ptr [ebp-0x18], eax call System.StubHelpers.StubHelpers:ClearLastError() mov eax, dword ptr [ebp-0x10] mov eax, dword ptr [eax+0x10] xor edx, edx mov dword ptr [ebp-0x24], edx mov edx, esp mov dword ptr [ebp-0x20], edx lea edx, G_M000_IG04 mov dword ptr [ebp-0x1C], edx mov byte ptr [esi+0x04], 0 G_M000_IG03: call eax G_M000_IG04: mov edi, eax mov byte ptr [esi+0x04], 1 cmp dword ptr [D1FFAB1EH], 0 je SHORT G_M000_IG05 call CORINFO_HELP_STOP_FOR_GC G_M000_IG05: xor eax, eax mov dword ptr [ebp-0x1C], eax call System.StubHelpers.StubHelpers:SetLastError() mov eax, edi mov edx, bword ptr [ebp-0x28] mov dword ptr [esi+0x08], edx G_M000_IG06: lea esp, [ebp-0x0C] pop ebx pop esi pop edi pop ebp ret ; Total bytes of code 107 ; Assembly listing for method Program:TestPInvoke() (Instrumented Tier0) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Instrumented Tier0 code ; ebp based frame ; partially interruptible G_M000_IG01: push ebp mov ebp, esp push edi push esi push ebx sub esp, 36 vzeroupper G_M000_IG02: lea edi, [ebp-0x2C] call CORINFO_HELP_INIT_PINVOKE_FRAME mov dword ptr [ebp-0x10], esi mov eax, ebp mov dword ptr [ebp-0x18], eax mov dword ptr [ebp-0x24], 0xD1FFAB1E mov eax, esp mov dword ptr [ebp-0x20], eax lea eax, G_M000_IG05 mov dword ptr [ebp-0x1C], eax mov eax, dword ptr [ebp-0x10] mov byte ptr [eax+0x04], 0 G_M000_IG03: mov eax, 0xD1FFAB1E G_M000_IG04: call eax ; Program:GetTickCount():uint G_M000_IG05: mov eax, dword ptr [ebp-0x10] mov byte ptr [eax+0x04], 1 cmp dword ptr [D1FFAB1EH], 0 je SHORT G_M000_IG06 call CORINFO_HELP_STOP_FOR_GC G_M000_IG06: xor eax, eax mov dword ptr [ebp-0x1C], eax mov eax, dword ptr [ebp-0x10] mov edx, bword ptr [ebp-0x28] mov dword ptr [eax+0x08], edx G_M000_IG07: lea esp, [ebp-0x0C] pop ebx pop esi pop edi pop ebp ret ; Total bytes of code 106 ; Assembly listing for method Program:TestPInvokeILStub() (Instrumented Tier0) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Instrumented Tier0 code ; ebp based frame ; partially interruptible G_M000_IG01: push ebp mov ebp, esp vzeroupper G_M000_IG02: call Program:GetTickCountILStub():uint G_M000_IG03: pop ebp ret ; Total bytes of code 13 ; Assembly listing for method Program:TestPInvoke() (Tier1) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Tier1 code ; optimized code ; ebp based frame ; partially interruptible ; No PGO data G_M000_IG01: push ebp mov ebp, esp push edi push esi push ebx sub esp, 32 vzeroupper G_M000_IG02: lea edi, [ebp-0x28] call CORINFO_HELP_INIT_PINVOKE_FRAME mov eax, ebp mov dword ptr [ebp-0x14], eax mov dword ptr [ebp-0x20], 0xD1FFAB1E mov eax, esp mov dword ptr [ebp-0x1C], eax lea eax, G_M000_IG05 mov dword ptr [ebp-0x18], eax mov byte ptr [esi+0x04], 0 G_M000_IG03: mov eax, 0xD1FFAB1E G_M000_IG04: call eax ; Program:GetTickCount():uint G_M000_IG05: mov byte ptr [esi+0x04], 1 cmp dword ptr [D1FFAB1EH], 0 je SHORT G_M000_IG06 call CORINFO_HELP_STOP_FOR_GC G_M000_IG06: xor eax, eax mov dword ptr [ebp-0x18], eax mov eax, bword ptr [ebp-0x24] mov dword ptr [esi+0x08], eax G_M000_IG07: lea esp, [ebp-0x0C] pop ebx pop esi pop edi pop ebp ret ; Total bytes of code 94 ; Assembly listing for method Program:TestPInvokeILStub() (Tier1) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Tier1 code ; optimized code ; ebp based frame ; partially interruptible ; No PGO data G_M000_IG01: push ebp mov ebp, esp vzeroupper G_M000_IG02: call Program:GetTickCountILStub():uint G_M000_IG03: pop ebp ret ; Total bytes of code 13 Bench: 5566.17 ms BenchILStub: 10545.62 ms
Texte modifié
Ouvrir un fichier
; Assembly listing for method Program:TestPInvoke() (Tier0) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Tier0 code ; ebp based frame ; partially interruptible G_M000_IG01: push ebp mov ebp, esp push edi push esi push ebx sub esp, 36 vzeroupper G_M000_IG02: lea edi, [ebp-0x2C] call CORINFO_HELP_INIT_PINVOKE_FRAME mov dword ptr [ebp-0x10], esi mov eax, ebp mov dword ptr [ebp-0x18], eax mov dword ptr [ebp-0x24], 0xD1FFAB1E mov eax, esp mov dword ptr [ebp-0x20], eax lea eax, G_M000_IG04 mov dword ptr [ebp-0x1C], eax mov eax, dword ptr [ebp-0x10] mov byte ptr [eax+0x04], 0 G_M000_IG03: call [Program:GetTickCount():uint] G_M000_IG04: mov eax, dword ptr [ebp-0x10] mov byte ptr [eax+0x04], 1 cmp dword ptr [D1FFAB1EH], 0 je SHORT G_M000_IG05 call CORINFO_HELP_STOP_FOR_GC G_M000_IG05: xor eax, eax mov dword ptr [ebp-0x1C], eax mov eax, dword ptr [ebp-0x10] mov edx, dword ptr [ebp-0x28] mov dword ptr [eax+0x08], edx G_M000_IG06: lea esp, [ebp-0x0C] pop ebx pop esi pop edi pop ebp ret ; Total bytes of code 105 ; Assembly listing for method Program:TestPInvokeILStub() (Tier0) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Tier0 code ; ebp based frame ; partially interruptible G_M000_IG01: push ebp mov ebp, esp vzeroupper G_M000_IG02: call Program:GetTickCountILStub():uint G_M000_IG03: pop ebp ret ; Total bytes of code 13 ; Assembly listing for method (dynamicClass):IL_STUB_PInvoke():uint (FullOpts) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; FullOpts code ; optimized code ; ebp based frame ; partially interruptible ; No PGO data G_M000_IG01: push ebp mov ebp, esp push edi push esi push ebx sub esp, 40 mov ebx, eax G_M000_IG02: mov dword ptr [ebp-0x14], ebx lea edi, [ebp-0x30] call CORINFO_HELP_INIT_PINVOKE_FRAME mov eax, ebp mov dword ptr [ebp-0x1C], eax call System.StubHelpers.StubHelpers:ClearLastError() mov eax, dword ptr [ebx+0x10] xor edx, edx mov dword ptr [ebp-0x28], edx mov edx, esp mov dword ptr [ebp-0x24], edx lea edx, G_M000_IG04 mov dword ptr [ebp-0x20], edx mov byte ptr [esi+0x04], 0 G_M000_IG03: call eax G_M000_IG04: mov edi, eax mov byte ptr [esi+0x04], 1 cmp dword ptr [D1FFAB1EH], 0 je SHORT G_M000_IG05 call CORINFO_HELP_STOP_FOR_GC G_M000_IG05: xor eax, eax mov dword ptr [ebp-0x20], eax call System.StubHelpers.StubHelpers:SetLastError() mov eax, edi mov edx, dword ptr [ebp-0x2C] mov dword ptr [esi+0x08], edx G_M000_IG06: lea esp, [ebp-0x0C] pop ebx pop esi pop edi pop ebp ret ; Total bytes of code 106 ; Assembly listing for method Program:TestPInvoke() (Instrumented Tier0) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Instrumented Tier0 code ; ebp based frame ; partially interruptible G_M000_IG01: push ebp mov ebp, esp push edi push esi push ebx sub esp, 36 vzeroupper G_M000_IG02: lea edi, [ebp-0x2C] call CORINFO_HELP_INIT_PINVOKE_FRAME mov dword ptr [ebp-0x10], esi mov eax, ebp mov dword ptr [ebp-0x18], eax mov dword ptr [ebp-0x24], 0xD1FFAB1E mov eax, esp mov dword ptr [ebp-0x20], eax lea eax, G_M000_IG05 mov dword ptr [ebp-0x1C], eax mov eax, dword ptr [ebp-0x10] mov byte ptr [eax+0x04], 0 G_M000_IG03: mov eax, 0xD1FFAB1E G_M000_IG04: call eax ; Program:GetTickCount():uint G_M000_IG05: mov eax, dword ptr [ebp-0x10] mov byte ptr [eax+0x04], 1 cmp dword ptr [D1FFAB1EH], 0 je SHORT G_M000_IG06 call CORINFO_HELP_STOP_FOR_GC G_M000_IG06: xor eax, eax mov dword ptr [ebp-0x1C], eax mov eax, dword ptr [ebp-0x10] mov edx, dword ptr [ebp-0x28] mov dword ptr [eax+0x08], edx G_M000_IG07: lea esp, [ebp-0x0C] pop ebx pop esi pop edi pop ebp ret ; Total bytes of code 106 ; Assembly listing for method Program:TestPInvokeILStub() (Instrumented Tier0) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Instrumented Tier0 code ; ebp based frame ; partially interruptible G_M000_IG01: push ebp mov ebp, esp vzeroupper G_M000_IG02: call Program:GetTickCountILStub():uint G_M000_IG03: pop ebp ret ; Total bytes of code 13 ; Assembly listing for method Program:TestPInvoke() (Tier1) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Tier1 code ; optimized code ; ebp based frame ; partially interruptible ; No PGO data G_M000_IG01: push ebp mov ebp, esp push edi push esi push ebx sub esp, 32 vzeroupper G_M000_IG02: lea edi, [ebp-0x28] call CORINFO_HELP_INIT_PINVOKE_FRAME mov eax, ebp mov dword ptr [ebp-0x14], eax mov dword ptr [ebp-0x20], 0xD1FFAB1E mov eax, esp mov dword ptr [ebp-0x1C], eax lea eax, G_M000_IG05 mov dword ptr [ebp-0x18], eax mov byte ptr [esi+0x04], 0 G_M000_IG03: mov eax, 0xD1FFAB1E G_M000_IG04: call eax ; Program:GetTickCount():uint G_M000_IG05: mov byte ptr [esi+0x04], 1 cmp dword ptr [D1FFAB1EH], 0 je SHORT G_M000_IG06 call CORINFO_HELP_STOP_FOR_GC G_M000_IG06: xor eax, eax mov dword ptr [ebp-0x18], eax mov eax, dword ptr [ebp-0x24] mov dword ptr [esi+0x08], eax G_M000_IG07: lea esp, [ebp-0x0C] pop ebx pop esi pop edi pop ebp ret ; Total bytes of code 94 ; Assembly listing for method Program:TestPInvokeILStub() (Tier1) ; Emitting BLENDED_CODE for X86 with AVX - Windows ; Tier1 code ; optimized code ; ebp based frame ; partially interruptible ; No PGO data G_M000_IG01: push ebp mov ebp, esp vzeroupper G_M000_IG02: call Program:GetTickCountILStub():uint G_M000_IG03: pop ebp ret ; Total bytes of code 13 Bench: 5547.76 ms BenchILStub: 10555.45 ms
Trouver la différence