Diff
checker
テキスト
テキスト
画像
ドキュメント
Excel
フォルダ
Legal
Enterprise
デスクトップ
料金
ログイン
Diffchecker デスクトップのダウンロード
テキスト比較
2 つのテキスト ファイルの違いを見つける
ツール
履歴
ライブエディター
未変更行を折りたたむ
折り返しなし
レイアウト
分割
統合
比較精度
スマート
単語
文字
シンタックスハイライト
構文を選択
無視
テキスト変換
最初の差分へ移動
入力を編集
Diffchecker Desktop
Diffcheckerを実行する最も安全な方法。Diffchecker Desktopアプリを入手:あなたの差分はコンピューターから出ることはありません!
Desktopを入手
Untitled Diff
作成日
5 年前
差分は期限切れになりません
クリア
エクスポート
共有
説明
31 削除
行
合計
削除
文字
合計
削除
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
92 行
すべてコピー
33 追加
行
合計
追加
文字
合計
追加
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
92 行
すべてコピー
; Assembly listing for method AnagramEqualityComparer:GetHashCode(System.String):int:this
; Assembly listing for method AnagramEqualityComparer:GetHashCode(System.String):int:this
; Emitting BLENDED_CODE for generic ARM64 CPU - Unix
; Emitting BLENDED_CODE for generic ARM64 CPU - Unix
; optimized code
; optimized code
; fp based frame
; fp based frame
; fully interruptible
; fully interruptible
; No matching PGO data
; No matching PGO data
; Final local variable assignments
; Final local variable assignments
;
;
;* V00 this [V00 ] ( 0, 0 ) ref -> zero-ref this class-hnd single-def
;* V00 this [V00 ] ( 0, 0 ) ref -> zero-ref this class-hnd single-def
; V01 arg1 [V01,T03] ( 5, 4 ) ref -> x1 class-hnd single-def
; V01 arg1 [V01,T03] ( 5, 4 ) ref -> x1 class-hnd single-def
コピー
コピー済み
コピー
コピー済み
; V02 loc0 [V02,T01] ( 4, 9 ) int ->
x2
; V02 loc0 [V02,T01] ( 4, 9 ) int ->
x0
; V03 loc1 [V03,T0
5
] ( 2,
4.50
) ref -> x1 class-hnd single-def
; V03 loc1 [V03,T0
6
] ( 2,
1
) ref -> x1 class-hnd single-def
; V04 loc2 [V04,T00] ( 5, 16.50) int -> x3
; V04 loc2 [V04,T00] ( 5, 16.50) int -> x3
; V05 loc3 [V05,T02] ( 2, 8 ) ushort -> x4
; V05 loc3 [V05,T02] ( 2, 8 ) ushort -> x4
;# V06 OutArgs [V06 ] ( 1, 1 ) lclBlk ( 0) [sp+00H] "OutgoingArgSpace"
;# V06 OutArgs [V06 ] ( 1, 1 ) lclBlk ( 0) [sp+00H] "OutgoingArgSpace"
コピー
コピー済み
コピー
コピー済み
; V07 cse0 [V07,T04] ( 4, 5.50) int ->
x0
"CSE - aggressive"
; V07 cse0 [V07,T04] ( 4, 5.50) int ->
x2 "CSE - aggressive"
; V08 cse1 [V08,T05] ( 2, 4.50) byref -> x1
"CSE - aggressive"
;
;
; Lcl frame size = 0
; Lcl frame size = 0
G_M19593_IG01: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, nogc <-- Prolog IG
G_M19593_IG01: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, nogc <-- Prolog IG
stp fp, lr, [sp,#-16]!
stp fp, lr, [sp,#-16]!
mov fp, sp
mov fp, sp
;; bbWeight=1 PerfScore 1.50
;; bbWeight=1 PerfScore 1.50
G_M19593_IG02: ; gcrefRegs=0002 {x1}, byrefRegs=0000 {}, byref, isz
G_M19593_IG02: ; gcrefRegs=0002 {x1}, byrefRegs=0000 {}, byref, isz
; gcrRegs +[x1]
; gcrRegs +[x1]
cbnz x1, G_M19593_IG05
cbnz x1, G_M19593_IG05
;; bbWeight=1 PerfScore 1.00
;; bbWeight=1 PerfScore 1.00
G_M19593_IG03: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref
G_M19593_IG03: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref
; gcrRegs -[x1]
; gcrRegs -[x1]
mov w0, #0
mov w0, #0
;; bbWeight=0.50 PerfScore 0.25
;; bbWeight=0.50 PerfScore 0.25
G_M19593_IG04: ; , epilog, nogc, extend
G_M19593_IG04: ; , epilog, nogc, extend
ldp fp, lr, [sp],#16
ldp fp, lr, [sp],#16
ret lr
ret lr
;; bbWeight=0.50 PerfScore 1.00
;; bbWeight=0.50 PerfScore 1.00
コピー
コピー済み
コピー
コピー済み
G_M19593_IG05: ; gcVars=0000000000000000 {}, gcrefRegs=0002 {x1}, byrefRegs=0000 {}, gcvars, byref, isz
G_M19593_IG05: ; gcVars=0000000000000000 {}, gcrefRegs=0002 {x1}, byrefRegs=0000 {}, gcvars, byref, isz
, align
; gcrRegs +[x1]
; gcrRegs +[x1]
コピー
コピー済み
コピー
コピー済み
ldr
w0
, [x1,#8]
ldr
w2
, [x1,#8]
mov
w2, w0
mov
w0, w2
mov w3, wzr
mov w3, wzr
コピー
コピー済み
コピー
コピー済み
cmp
w0
, #0
cmp
w2
, #0
ble G_M19593_IG07
ble G_M19593_IG07
コピー
コピー済み
コピー
コピー済み
align [
0
bytes]
add x1, x1, #12
align [
0
bytes]
; gcrRegs -[x1]
align [
0
bytes]
; byrRegs +[x1]
align [
0
bytes]
align [
4
bytes]
;; bbWeight=0.50 PerfScore
2.75
align [
4
bytes]
G_M19593_IG06: ; gcrefRegs=000
2 {x1
}, byrefRegs=000
0 {
}, loop=IG06, byref, isz
align [
4
bytes]
align [
4
bytes]
;; bbWeight=0.50 PerfScore
4.00
G_M19593_IG06: ; gcrefRegs=000
0 {
}, byrefRegs=000
2 {x1
}, loop=IG06, byref, isz
ubfiz x4, x3, #1, #32
ubfiz x4, x3, #1, #32
コピー
コピー済み
コピー
コピー済み
add x4, x4, #12
ldrh w4, [x1, x4]
ldrh w4, [x1, x4]
コピー
コピー済み
コピー
コピー済み
eor
w2, w2
, w4
eor
w0, w0
, w4
add w3, w3, #1
add w3, w3, #1
コピー
コピー済み
コピー
コピー済み
cmp
w0
, w3
cmp
w2
, w3
bgt G_M19593_IG06
bgt G_M19593_IG06
コピー
コピー済み
コピー
コピー済み
;; bbWeight=4 PerfScore
28
.00
;; bbWeight=4 PerfScore
26
.00
G_M19593_IG07: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref
G_M19593_IG07: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref
, epilog, nogc
;
gc
rRegs -[x1]
;
by
rRegs -[x1]
mov w0, w2
;; bbWeight=0.50 PerfScore 0.25
G_M19593_IG08: ; , epilog, nogc, extend
ldp fp, lr, [sp],#16
ldp fp, lr, [sp],#16
ret lr
ret lr
;; bbWeight=0.50 PerfScore 1.00
;; bbWeight=0.50 PerfScore 1.00
コピー
コピー済み
コピー
コピー済み
; Total bytes of code
84
, prolog size 8, PerfScore 44.
15
, instruction count
25
, allocated bytes for code
84
(MethodHash=c8c4b376) for method AnagramEqualityComparer:GetHashCode(System.String):int:this
; Total bytes of code
96
, prolog size 8, PerfScore 44.
35
, instruction count
24
, allocated bytes for code
96
(MethodHash=c8c4b376) for method AnagramEqualityComparer:GetHashCode(System.String):int:this
; ============================================================
; ============================================================
Unwind Info:
Unwind Info:
>> Start offset : 0x000000 (not in unwind data)
>> Start offset : 0x000000 (not in unwind data)
>> End offset : 0xd1ffab1e (not in unwind data)
>> End offset : 0xd1ffab1e (not in unwind data)
Code Words : 1
Code Words : 1
Epilog Count : 2
Epilog Count : 2
E bit : 0
E bit : 0
X bit : 0
X bit : 0
Vers : 0
Vers : 0
コピー
コピー済み
コピー
コピー済み
Function Length :
21
(0x0001
5
) Actual length =
84
(0x0000
54
)
Function Length :
24
(0x0001
8
) Actual length =
96
(0x0000
60
)
---- Epilog scopes ----
---- Epilog scopes ----
---- Scope 0
---- Scope 0
Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)
Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)
Epilog Start Index : 1 (0x01)
Epilog Start Index : 1 (0x01)
---- Scope 1
---- Scope 1
Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)
Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e)
Epilog Start Index : 1 (0x01)
Epilog Start Index : 1 (0x01)
---- Unwind codes ----
---- Unwind codes ----
E1 set_fp; mov fp, sp
E1 set_fp; mov fp, sp
---- Epilog start at index 1 ----
---- Epilog start at index 1 ----
81 save_fplr_x #1 (0x01); stp fp, lr, [sp, #-16]!
81 save_fplr_x #1 (0x01); stp fp, lr, [sp, #-16]!
E4 end
E4 end
E4 end
E4 end
保存された差分
原文
ファイルを開く
; Assembly listing for method AnagramEqualityComparer:GetHashCode(System.String):int:this ; Emitting BLENDED_CODE for generic ARM64 CPU - Unix ; optimized code ; fp based frame ; fully interruptible ; No matching PGO data ; Final local variable assignments ; ;* V00 this [V00 ] ( 0, 0 ) ref -> zero-ref this class-hnd single-def ; V01 arg1 [V01,T03] ( 5, 4 ) ref -> x1 class-hnd single-def ; V02 loc0 [V02,T01] ( 4, 9 ) int -> x2 ; V03 loc1 [V03,T05] ( 2, 4.50) ref -> x1 class-hnd single-def ; V04 loc2 [V04,T00] ( 5, 16.50) int -> x3 ; V05 loc3 [V05,T02] ( 2, 8 ) ushort -> x4 ;# V06 OutArgs [V06 ] ( 1, 1 ) lclBlk ( 0) [sp+00H] "OutgoingArgSpace" ; V07 cse0 [V07,T04] ( 4, 5.50) int -> x0 "CSE - aggressive" ; ; Lcl frame size = 0 G_M19593_IG01: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, nogc <-- Prolog IG stp fp, lr, [sp,#-16]! mov fp, sp ;; bbWeight=1 PerfScore 1.50 G_M19593_IG02: ; gcrefRegs=0002 {x1}, byrefRegs=0000 {}, byref, isz ; gcrRegs +[x1] cbnz x1, G_M19593_IG05 ;; bbWeight=1 PerfScore 1.00 G_M19593_IG03: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref ; gcrRegs -[x1] mov w0, #0 ;; bbWeight=0.50 PerfScore 0.25 G_M19593_IG04: ; , epilog, nogc, extend ldp fp, lr, [sp],#16 ret lr ;; bbWeight=0.50 PerfScore 1.00 G_M19593_IG05: ; gcVars=0000000000000000 {}, gcrefRegs=0002 {x1}, byrefRegs=0000 {}, gcvars, byref, isz ; gcrRegs +[x1] ldr w0, [x1,#8] mov w2, w0 mov w3, wzr cmp w0, #0 ble G_M19593_IG07 align [0 bytes] align [0 bytes] align [0 bytes] align [0 bytes] ;; bbWeight=0.50 PerfScore 2.75 G_M19593_IG06: ; gcrefRegs=0002 {x1}, byrefRegs=0000 {}, loop=IG06, byref, isz ubfiz x4, x3, #1, #32 add x4, x4, #12 ldrh w4, [x1, x4] eor w2, w2, w4 add w3, w3, #1 cmp w0, w3 bgt G_M19593_IG06 ;; bbWeight=4 PerfScore 28.00 G_M19593_IG07: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref ; gcrRegs -[x1] mov w0, w2 ;; bbWeight=0.50 PerfScore 0.25 G_M19593_IG08: ; , epilog, nogc, extend ldp fp, lr, [sp],#16 ret lr ;; bbWeight=0.50 PerfScore 1.00 ; Total bytes of code 84, prolog size 8, PerfScore 44.15, instruction count 25, allocated bytes for code 84 (MethodHash=c8c4b376) for method AnagramEqualityComparer:GetHashCode(System.String):int:this ; ============================================================ Unwind Info: >> Start offset : 0x000000 (not in unwind data) >> End offset : 0xd1ffab1e (not in unwind data) Code Words : 1 Epilog Count : 2 E bit : 0 X bit : 0 Vers : 0 Function Length : 21 (0x00015) Actual length = 84 (0x000054) ---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e) Epilog Start Index : 1 (0x01) ---- Scope 1 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e) Epilog Start Index : 1 (0x01) ---- Unwind codes ---- E1 set_fp; mov fp, sp ---- Epilog start at index 1 ---- 81 save_fplr_x #1 (0x01); stp fp, lr, [sp, #-16]! E4 end E4 end
変更されたテキスト
ファイルを開く
; Assembly listing for method AnagramEqualityComparer:GetHashCode(System.String):int:this ; Emitting BLENDED_CODE for generic ARM64 CPU - Unix ; optimized code ; fp based frame ; fully interruptible ; No matching PGO data ; Final local variable assignments ; ;* V00 this [V00 ] ( 0, 0 ) ref -> zero-ref this class-hnd single-def ; V01 arg1 [V01,T03] ( 5, 4 ) ref -> x1 class-hnd single-def ; V02 loc0 [V02,T01] ( 4, 9 ) int -> x0 ; V03 loc1 [V03,T06] ( 2, 1 ) ref -> x1 class-hnd single-def ; V04 loc2 [V04,T00] ( 5, 16.50) int -> x3 ; V05 loc3 [V05,T02] ( 2, 8 ) ushort -> x4 ;# V06 OutArgs [V06 ] ( 1, 1 ) lclBlk ( 0) [sp+00H] "OutgoingArgSpace" ; V07 cse0 [V07,T04] ( 4, 5.50) int -> x2 "CSE - aggressive" ; V08 cse1 [V08,T05] ( 2, 4.50) byref -> x1 "CSE - aggressive" ; ; Lcl frame size = 0 G_M19593_IG01: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, nogc <-- Prolog IG stp fp, lr, [sp,#-16]! mov fp, sp ;; bbWeight=1 PerfScore 1.50 G_M19593_IG02: ; gcrefRegs=0002 {x1}, byrefRegs=0000 {}, byref, isz ; gcrRegs +[x1] cbnz x1, G_M19593_IG05 ;; bbWeight=1 PerfScore 1.00 G_M19593_IG03: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref ; gcrRegs -[x1] mov w0, #0 ;; bbWeight=0.50 PerfScore 0.25 G_M19593_IG04: ; , epilog, nogc, extend ldp fp, lr, [sp],#16 ret lr ;; bbWeight=0.50 PerfScore 1.00 G_M19593_IG05: ; gcVars=0000000000000000 {}, gcrefRegs=0002 {x1}, byrefRegs=0000 {}, gcvars, byref, isz, align ; gcrRegs +[x1] ldr w2, [x1,#8] mov w0, w2 mov w3, wzr cmp w2, #0 ble G_M19593_IG07 add x1, x1, #12 ; gcrRegs -[x1] ; byrRegs +[x1] align [4 bytes] align [4 bytes] align [4 bytes] align [4 bytes] ;; bbWeight=0.50 PerfScore 4.00 G_M19593_IG06: ; gcrefRegs=0000 {}, byrefRegs=0002 {x1}, loop=IG06, byref, isz ubfiz x4, x3, #1, #32 ldrh w4, [x1, x4] eor w0, w0, w4 add w3, w3, #1 cmp w2, w3 bgt G_M19593_IG06 ;; bbWeight=4 PerfScore 26.00 G_M19593_IG07: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, epilog, nogc ; byrRegs -[x1] ldp fp, lr, [sp],#16 ret lr ;; bbWeight=0.50 PerfScore 1.00 ; Total bytes of code 96, prolog size 8, PerfScore 44.35, instruction count 24, allocated bytes for code 96 (MethodHash=c8c4b376) for method AnagramEqualityComparer:GetHashCode(System.String):int:this ; ============================================================ Unwind Info: >> Start offset : 0x000000 (not in unwind data) >> End offset : 0xd1ffab1e (not in unwind data) Code Words : 1 Epilog Count : 2 E bit : 0 X bit : 0 Vers : 0 Function Length : 24 (0x00018) Actual length = 96 (0x000060) ---- Epilog scopes ---- ---- Scope 0 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e) Epilog Start Index : 1 (0x01) ---- Scope 1 Epilog Start Offset : 3523193630 (0xd1ffab1e) Actual offset = 3523193630 (0xd1ffab1e) Offset from main function begin = 3523193630 (0xd1ffab1e) Epilog Start Index : 1 (0x01) ---- Unwind codes ---- E1 set_fp; mov fp, sp ---- Epilog start at index 1 ---- 81 save_fplr_x #1 (0x01); stp fp, lr, [sp, #-16]! E4 end E4 end
違いを見つける