Diff
checker
Text
Text
Images
Documents
Excel
Folders
Legal
Enterprise
Desktop
Pricing
Sign in
Download Diffchecker Desktop
Compare text
Find the difference between two text files
Tools
History
Real-time editor
Hide whitespace changes
Hide unchanged lines
Disable line wrap
Layout
Split
Unified
Diff precision
Smart
Word
Char
Text styles
Change appearance
Syntax highlighting
Choose syntax
Ignore
Transform text
Go to first change
Edit input
Diffchecker Desktop
The most secure way to run Diffchecker. Get the Diffchecker Desktop app: your diffs never leave your computer!
Get Desktop
Untitled Diff
Created
4 years ago
Diff never expires
Clear
Export
Share
Explain
99 removals
Lines
Total
Removed
Characters
Total
Removed
To continue using this feature, upgrade to
Diff
checker
Pro
View Pricing
100 lines
Copy
52 additions
Lines
Total
Added
Characters
Total
Added
To continue using this feature, upgrade to
Diff
checker
Pro
View Pricing
56 lines
Copy
; Assembly listing for method System.Linq.Enumerable:OrderDescending[int](System.Collections.Generic.IEnumerable`1[int]):System.Linq.IOrderedEnumerable`1[int]
; Assembly listing for method System.Linq.Enumerable:OrderDescending[int](System.Collections.Generic.IEnumerable`1[int]):System.Linq.IOrderedEnumerable`1[int]
; 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
Copy
Copied
Copy
Copied
; 0 inlinees with PGO data; 6 single block inlinees;
3
inlinees without PGO data
; 0 inlinees with PGO data; 6 single block inlinees;
4
inlinees without PGO data
; Final local variable assignments
; Final local variable assignments
;
;
Copy
Copied
Copy
Copied
; V00 arg0 [V00,T01] (
6
, 4 ) ref -> rsi class-hnd single-def
; V00 arg0 [V00,T01] (
4
, 4 ) ref -> rsi class-hnd single-def
; V01 OutArgs [V01 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace"
; V01 OutArgs [V01 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace"
Copy
Copied
Copy
Copied
; V02 tmp1 [V02,T0
4
] (
3
, 2 ) ref -> r
b
x class-hnd
"Inline return value spill temp"
; V02 tmp1 [V02,T0
2
] (
2
, 2 ) ref -> r
a
x class-hnd
single-def
"Inline return value spill temp"
; V03 tmp2 [V03,T0
2
] ( 4,
4
) ref ->
rbx
class-hnd exact single-def "NewObj constructor temp"
; V03 tmp2 [V03,T0
0
] ( 4,
8
) ref ->
rdi
class-hnd exact single-def "NewObj constructor temp"
;* V04 tmp3 [V04 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp"
;* V04 tmp3 [V04 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp"
Copy
Copied
Copy
Copied
;
V05 tmp4 [V05
,T03
] (
3
,
3
)
ref
->
rdi
class-hnd single-def
"Inlin
ing Arg
"
;
*
V05 tmp4 [V05
] (
0
,
0
)
bool
->
zero-ref
"Inlin
e return value spill temp
"
;
V06 tmp5 [V06
,T00
] (
7
,
7
) ref ->
rbx
class-hnd
exact single-def "NewObj constructor temp
"
;
*
V06 tmp5 [V06
] (
0
,
0
) ref ->
zero-ref
class-hnd
"Inlining Arg
"
;* V07 tmp6 [V07 ] ( 0, 0 ) ref -> zero-ref
single-def
;* V07 tmp6 [V07 ] ( 0, 0 ) ref -> zero-ref
class-hnd exact "NewObj constructor temp"
;* V08 tmp7 [V08 ] ( 0, 0 ) ref -> zero-ref
single-def
;* V08 tmp7 [V08 ] ( 0, 0 ) ref -> zero-ref
;* V09 tmp8 [V09 ] ( 0, 0 ) ref -> zero-ref
single-def
;* V09 tmp8 [V09 ] ( 0, 0 ) ref -> zero-ref
;
V10 tmp9 [V10
,T05
] (
2
,
1
) ref ->
rdx
single-def
;*
V10 tmp9 [V10
] (
0
,
0
) ref ->
zero-ref
;* V11 tmp10
[V11 ] ( 0, 0 ) ref -> zero-ref
;
;
Copy
Copied
Copy
Copied
; Lcl frame size =
32
; Lcl frame size =
40
G_M46272_IG01:
G_M46272_IG01:
push rdi
push rdi
push rsi
push rsi
Copy
Copied
Copy
Copied
push rbx
sub rsp,
40
sub rsp,
32
mov rsi, rcx
mov rsi, rcx
Copy
Copied
Copy
Copied
;; size=
10
bbWeight=1 PerfScore
3
.50
;; size=
9
bbWeight=1 PerfScore
2
.50
G_M46272_IG02:
G_M46272_IG02:
Copy
Copied
Copy
Copied
call [System.Linq.Enumerable:TypeIsImplicitlyStable[int]():bool]
test eax, eax
jne G_M46272_IG04
;; size=14 bbWeight=1 PerfScore 4.25
G_M46272_IG03:
mov rcx, 0xD1FFAB1E
mov edx, 9
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rcx, 0xD1FFAB1E ; data for System.Linq.EnumerableSorter`1[int]:IdentityFunc
mov rdi, gword ptr [rcx]
mov rcx, 0xD1FFAB1E ; System.Linq.OrderedEnumerable`2[int,int]
call CORINFO_HELP_NEWSFAST
mov rbx, rax
lea rcx, bword ptr [rbx+08H]
mov rdx, rsi
call CORINFO_HELP_ASSIGN_REF
test rsi, rsi
je G_M46272_IG08
test rdi, rdi
je SHORT G_M46272_IG07
xor rdx, rdx
mov gword ptr [rbx+10H], rdx
lea rcx, bword ptr [rbx+18H]
mov rdx, rdi
call CORINFO_HELP_ASSIGN_REF
mov rcx, 0xD1FFAB1E
mov edx, 38
call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS
mov rdx, 0xD1FFAB1E ; data for System.Collections.Generic.Comparer`1[int]:<Default>k__BackingField
mov rdx, gword ptr [rdx]
lea rcx, bword ptr [rbx+20H]
call CORINFO_HELP_ASSIGN_REF
mov byte ptr [rbx+28H], 1
jmp SHORT G_M46272_IG05
;; size=143 bbWeight=0.50 PerfScore 10.38
G_M46272_IG04:
mov rcx, 0xD1FFAB1E ; System.Linq.OrderedImplicitlyStableEnumerable`1[int]
mov rcx, 0xD1FFAB1E ; System.Linq.OrderedImplicitlyStableEnumerable`1[int]
call CORINFO_HELP_NEWSFAST
call CORINFO_HELP_NEWSFAST
Copy
Copied
Copy
Copied
mov
rbx
, rax
mov
rdi
, rax
lea rcx, bword ptr [
rbx
+08H]
lea rcx, bword ptr [
rdi
+08H]
mov rdx, rsi
mov rdx, rsi
call CORINFO_HELP_ASSIGN_REF
call CORINFO_HELP_ASSIGN_REF
test rsi, rsi
test rsi, rsi
Copy
Copied
Copy
Copied
je SHORT G_M46272_IG0
8
je SHORT G_M46272_IG0
4
mov byte ptr [
rbx
+10H], 1
mov byte ptr [
rdi
+10H], 1
;; size=39 bbWeight=0.50 PerfScore 2.75
mov rax,
rdi
G_M46272_IG05:
;; size=
42
bbWeight=1 PerfScore
5.75
mov rax,
rbx
G_M46272_IG0
3
:
;; size=
3
bbWeight=1 PerfScore
0.25
add rsp,
40
G_M46272_IG0
6
:
add rsp,
32
pop rbx
pop rsi
pop rsi
pop rdi
pop rdi
ret
ret
Copy
Copied
Copy
Copied
;; size=
8
bbWeight=1 PerfScore 2.
75
;; size=
7
bbWeight=1 PerfScore 2.
25
G_M46272_
IG07:
G_M46272_
IG04:
mov ecx, 9
call [System.Linq.ThrowHelper:ThrowArgumentNullException(int)]
int3
;; size=12 bbWeight=0 PerfScore 0.00
G_M46272_IG08:
mov ecx, 16
mov ecx, 16
call [System.Linq.ThrowHelper:ThrowArgumentNullException(int)]
call [System.Linq.ThrowHelper:ThrowArgumentNullException(int)]
int3
int3
;; size=12 bbWeight=0 PerfScore 0.00
;; size=12 bbWeight=0 PerfScore 0.00
Copy
Copied
Copy
Copied
; Total bytes of code
241
, prolog size
7
, PerfScore
47.98
, instruction count
58
, allocated bytes for code
241
(MethodHash=1faf4b3f) for method System.Linq.Enumerable:OrderDescending[int](System.Collections.Generic.IEnumerable`1[int]):System.Linq.IOrderedEnumerable`1[int]
; Total bytes of code
70
, prolog size
6
, PerfScore
17.50
, instruction count
21
, allocated bytes for code
70
(MethodHash=1faf4b3f) for method System.Linq.Enumerable:OrderDescending[int](System.Collections.Generic.IEnumerable`1[int]):System.Linq.IOrderedEnumerable`1[int]
; ============================================================
; ============================================================
Saved diffs
Original text
Open file
; Assembly listing for method System.Linq.Enumerable:OrderDescending[int](System.Collections.Generic.IEnumerable`1[int]):System.Linq.IOrderedEnumerable`1[int] ; Emitting BLENDED_CODE for X64 CPU with AVX - Windows ; optimized code ; rsp based frame ; partially interruptible ; No PGO data ; 0 inlinees with PGO data; 6 single block inlinees; 3 inlinees without PGO data ; Final local variable assignments ; ; V00 arg0 [V00,T01] ( 6, 4 ) ref -> rsi class-hnd single-def ; V01 OutArgs [V01 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace" ; V02 tmp1 [V02,T04] ( 3, 2 ) ref -> rbx class-hnd "Inline return value spill temp" ; V03 tmp2 [V03,T02] ( 4, 4 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" ;* V04 tmp3 [V04 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" ; V05 tmp4 [V05,T03] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" ; V06 tmp5 [V06,T00] ( 7, 7 ) ref -> rbx class-hnd exact single-def "NewObj constructor temp" ;* V07 tmp6 [V07 ] ( 0, 0 ) ref -> zero-ref single-def ;* V08 tmp7 [V08 ] ( 0, 0 ) ref -> zero-ref single-def ;* V09 tmp8 [V09 ] ( 0, 0 ) ref -> zero-ref single-def ; V10 tmp9 [V10,T05] ( 2, 1 ) ref -> rdx single-def ; ; Lcl frame size = 32 G_M46272_IG01: push rdi push rsi push rbx sub rsp, 32 mov rsi, rcx ;; size=10 bbWeight=1 PerfScore 3.50 G_M46272_IG02: call [System.Linq.Enumerable:TypeIsImplicitlyStable[int]():bool] test eax, eax jne G_M46272_IG04 ;; size=14 bbWeight=1 PerfScore 4.25 G_M46272_IG03: mov rcx, 0xD1FFAB1E mov edx, 9 call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS mov rcx, 0xD1FFAB1E ; data for System.Linq.EnumerableSorter`1[int]:IdentityFunc mov rdi, gword ptr [rcx] mov rcx, 0xD1FFAB1E ; System.Linq.OrderedEnumerable`2[int,int] call CORINFO_HELP_NEWSFAST mov rbx, rax lea rcx, bword ptr [rbx+08H] mov rdx, rsi call CORINFO_HELP_ASSIGN_REF test rsi, rsi je G_M46272_IG08 test rdi, rdi je SHORT G_M46272_IG07 xor rdx, rdx mov gword ptr [rbx+10H], rdx lea rcx, bword ptr [rbx+18H] mov rdx, rdi call CORINFO_HELP_ASSIGN_REF mov rcx, 0xD1FFAB1E mov edx, 38 call CORINFO_HELP_CLASSINIT_SHARED_DYNAMICCLASS mov rdx, 0xD1FFAB1E ; data for System.Collections.Generic.Comparer`1[int]:<Default>k__BackingField mov rdx, gword ptr [rdx] lea rcx, bword ptr [rbx+20H] call CORINFO_HELP_ASSIGN_REF mov byte ptr [rbx+28H], 1 jmp SHORT G_M46272_IG05 ;; size=143 bbWeight=0.50 PerfScore 10.38 G_M46272_IG04: mov rcx, 0xD1FFAB1E ; System.Linq.OrderedImplicitlyStableEnumerable`1[int] call CORINFO_HELP_NEWSFAST mov rbx, rax lea rcx, bword ptr [rbx+08H] mov rdx, rsi call CORINFO_HELP_ASSIGN_REF test rsi, rsi je SHORT G_M46272_IG08 mov byte ptr [rbx+10H], 1 ;; size=39 bbWeight=0.50 PerfScore 2.75 G_M46272_IG05: mov rax, rbx ;; size=3 bbWeight=1 PerfScore 0.25 G_M46272_IG06: add rsp, 32 pop rbx pop rsi pop rdi ret ;; size=8 bbWeight=1 PerfScore 2.75 G_M46272_IG07: mov ecx, 9 call [System.Linq.ThrowHelper:ThrowArgumentNullException(int)] int3 ;; size=12 bbWeight=0 PerfScore 0.00 G_M46272_IG08: mov ecx, 16 call [System.Linq.ThrowHelper:ThrowArgumentNullException(int)] int3 ;; size=12 bbWeight=0 PerfScore 0.00 ; Total bytes of code 241, prolog size 7, PerfScore 47.98, instruction count 58, allocated bytes for code 241 (MethodHash=1faf4b3f) for method System.Linq.Enumerable:OrderDescending[int](System.Collections.Generic.IEnumerable`1[int]):System.Linq.IOrderedEnumerable`1[int] ; ============================================================
Changed text
Open file
; Assembly listing for method System.Linq.Enumerable:OrderDescending[int](System.Collections.Generic.IEnumerable`1[int]):System.Linq.IOrderedEnumerable`1[int] ; Emitting BLENDED_CODE for X64 CPU with AVX - Windows ; optimized code ; rsp based frame ; partially interruptible ; No PGO data ; 0 inlinees with PGO data; 6 single block inlinees; 4 inlinees without PGO data ; Final local variable assignments ; ; V00 arg0 [V00,T01] ( 4, 4 ) ref -> rsi class-hnd single-def ; V01 OutArgs [V01 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace" ; V02 tmp1 [V02,T02] ( 2, 2 ) ref -> rax class-hnd single-def "Inline return value spill temp" ; V03 tmp2 [V03,T00] ( 4, 8 ) ref -> rdi class-hnd exact single-def "NewObj constructor temp" ;* V04 tmp3 [V04 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline stloc first use temp" ;* V05 tmp4 [V05 ] ( 0, 0 ) bool -> zero-ref "Inline return value spill temp" ;* V06 tmp5 [V06 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" ;* V07 tmp6 [V07 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "NewObj constructor temp" ;* V08 tmp7 [V08 ] ( 0, 0 ) ref -> zero-ref ;* V09 tmp8 [V09 ] ( 0, 0 ) ref -> zero-ref ;* V10 tmp9 [V10 ] ( 0, 0 ) ref -> zero-ref ;* V11 tmp10 [V11 ] ( 0, 0 ) ref -> zero-ref ; ; Lcl frame size = 40 G_M46272_IG01: push rdi push rsi sub rsp, 40 mov rsi, rcx ;; size=9 bbWeight=1 PerfScore 2.50 G_M46272_IG02: mov rcx, 0xD1FFAB1E ; System.Linq.OrderedImplicitlyStableEnumerable`1[int] call CORINFO_HELP_NEWSFAST mov rdi, rax lea rcx, bword ptr [rdi+08H] mov rdx, rsi call CORINFO_HELP_ASSIGN_REF test rsi, rsi je SHORT G_M46272_IG04 mov byte ptr [rdi+10H], 1 mov rax, rdi ;; size=42 bbWeight=1 PerfScore 5.75 G_M46272_IG03: add rsp, 40 pop rsi pop rdi ret ;; size=7 bbWeight=1 PerfScore 2.25 G_M46272_IG04: mov ecx, 16 call [System.Linq.ThrowHelper:ThrowArgumentNullException(int)] int3 ;; size=12 bbWeight=0 PerfScore 0.00 ; Total bytes of code 70, prolog size 6, PerfScore 17.50, instruction count 21, allocated bytes for code 70 (MethodHash=1faf4b3f) for method System.Linq.Enumerable:OrderDescending[int](System.Collections.Generic.IEnumerable`1[int]):System.Linq.IOrderedEnumerable`1[int] ; ============================================================
Find difference