Diff
checker
テキスト
テキスト
画像
ドキュメント
Excel
フォルダ
Legal
Enterprise
デスクトップ
料金
ログイン
Diffchecker デスクトップのダウンロード
テキスト比較
2 つのテキスト ファイルの違いを見つける
ツール
履歴
表示
レイアウト
分割
統合
ライブエディター
空白の変更を非表示
未変更行を折りたたむ
折り返しなし
比較精度
スマート
構文
なし
外観を変更
処理
無視
テキスト変換
最初の差分へ移動
入力を編集
Diffchecker Desktop
Diffcheckerを実行する最も安全な方法。Diffchecker Desktopアプリを入手:あなたの差分はコンピューターから出ることはありません!
Desktopを入手
Untitled Diff
作成日
5 年前
差分は期限切れになりません
クリア
エクスポート
共有
説明
14 削除
行
合計
削除
文字
合計
削除
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
113 行
すべてコピー
11 追加
行
合計
追加
文字
合計
追加
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
111 行
すべてコピー
; Assembly listing for method System.Number:DigitsToUInt32(long,int):int
; Assembly listing for method System.Number:DigitsToUInt32(long,int):int
; Emitting BLENDED_CODE for generic ARM64 CPU - Windows
; Emitting BLENDED_CODE for generic ARM64 CPU - Windows
; optimized code
; optimized code
; fp based frame
; fp based frame
; fully interruptible
; fully interruptible
; No matching PGO data
; No matching PGO data
; 0 inlinees with PGO data; 1 single block inlinees; 1 inlinees without PGO data
; 0 inlinees with PGO data; 1 single block inlinees; 1 inlinees without PGO data
; Final local variable assignments
; Final local variable assignments
;
;
; V00 arg0 [V00,T00] ( 11, 23 ) long -> x19
; V00 arg0 [V00,T00] ( 11, 23 ) long -> x19
; V01 arg1 [V01,T02] ( 5, 4.50) int -> x20 single-def
; V01 arg1 [V01,T02] ( 5, 4.50) int -> x20 single-def
; V02 loc0 [V02,T03] ( 3, 6 ) long -> x0
; V02 loc0 [V02,T03] ( 3, 6 ) long -> x0
; V03 loc1 [V03,T01] ( 4, 10 ) int -> x1
; V03 loc1 [V03,T01] ( 4, 10 ) int -> x1
;# V04 OutArgs [V04 ] ( 1, 1 ) lclBlk ( 0) [sp+00H] "OutgoingArgSpace"
;# V04 OutArgs [V04 ] ( 1, 1 ) lclBlk ( 0) [sp+00H] "OutgoingArgSpace"
; V05 tmp1 [V05,T07] ( 3, 2 ) int -> x0
; V05 tmp1 [V05,T07] ( 3, 2 ) int -> x0
; V06 tmp2 [V06,T05] ( 2, 4 ) bool -> x0 "Inlining Arg"
; V06 tmp2 [V06,T05] ( 2, 4 ) bool -> x0 "Inlining Arg"
;* V07 tmp3 [V07,T08] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg"
;* V07 tmp3 [V07,T08] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg"
; V08 tmp4 [V08,T04] ( 3, 4 ) ref -> x1 class-hnd single-def "Inlining Arg"
; V08 tmp4 [V08,T04] ( 3, 4 ) ref -> x1 class-hnd single-def "Inlining Arg"
; V09 cse0 [V09,T06] ( 2, 2 ) ref -> x1 "CSE - aggressive"
; V09 cse0 [V09,T06] ( 2, 2 ) ref -> x1 "CSE - aggressive"
;
;
; Lcl frame size = 0
; Lcl frame size = 0
G_M47917_IG01: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, nogc <-- Prolog IG
G_M47917_IG01: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, nogc <-- Prolog IG
stp fp, lr, [sp,#-32]!
stp fp, lr, [sp,#-32]!
stp x19, x20, [sp,#16]
stp x19, x20, [sp,#16]
mov fp, sp
mov fp, sp
mov x19, x0
mov x19, x0
mov w20, w1
mov w20, w1
;; bbWeight=1 PerfScore 3.50
;; bbWeight=1 PerfScore 3.50
G_M47917_IG02: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz
G_M47917_IG02: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz
cmp w20, #1
cmp w20, #1
blt G_M47917_IG04
blt G_M47917_IG04
;; bbWeight=1 PerfScore 1.50
;; bbWeight=1 PerfScore 1.50
G_M47917_IG03: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref
G_M47917_IG03: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref
cmp w20, #9
cmp w20, #9
cset x0, le
cset x0, le
b G_M47917_IG05
b G_M47917_IG05
;; bbWeight=0.50 PerfScore 1.00
;; bbWeight=0.50 PerfScore 1.00
G_M47917_IG04: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref
G_M47917_IG04: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref
mov w0, wzr
mov w0, wzr
;; bbWeight=0.50 PerfScore 0.25
;; bbWeight=0.50 PerfScore 0.25
G_M47917_IG05: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz
G_M47917_IG05: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz
uxtb w0, w0
uxtb w0, w0
movz x1, #0xd1ffab1e
movz x1, #0xd1ffab1e
movk x1, #0xd1ffab1e LSL #16
movk x1, #0xd1ffab1e LSL #16
movk x1, #0xd1ffab1e LSL #32
movk x1, #0xd1ffab1e LSL #32
ldr x1, [x1]
ldr x1, [x1]
; gcrRegs +[x1]
; gcrRegs +[x1]
cbnz w0, G_M47917_IG07
cbnz w0, G_M47917_IG07
;; bbWeight=1 PerfScore 6.00
;; bbWeight=1 PerfScore 6.00
G_M47917_IG06: ; gcrefRegs=0002 {x1}, byrefRegs=0000 {}, byref
G_M47917_IG06: ; gcrefRegs=0002 {x1}, byrefRegs=0000 {}, byref
mov x0, x1
mov x0, x1
; gcrRegs +[x0]
; gcrRegs +[x0]
bl hackishModuleName:hackishMethodName()
bl hackishModuleName:hackishMethodName()
; gcrRegs -[x0-x1]
; gcrRegs -[x0-x1]
; gcr arg pop 0
; gcr arg pop 0
;; bbWeight=0.50 PerfScore 0.75
;; bbWeight=0.50 PerfScore 0.75
G_M47917_IG07: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz
G_M47917_IG07: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz
コピー
コピー済み
コピー
コピー済み
sxtw x0, w20
add x0, x19,
w20, SXTW
add x0, x19,
x0
ldrb w1, [x19]
ldrb w1, [x19]
sub w1, w1, #48
sub w1, w1, #48
add x19, x19, #1
add x19, x19, #1
cmp x19, x0
cmp x19, x0
bhs G_M47917_IG09
bhs G_M47917_IG09
;; bbWeight=1 PerfScore 6.50
;; bbWeight=1 PerfScore 6.50
G_M47917_IG08: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz
G_M47917_IG08: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz
mov x2, #5
mov x2, #5
mul w1, w1, w2
mul w1, w1, w2
コピー
コピー済み
コピー
コピー済み
lsl w1, w1, #1
ldrb w2, [x19]
ldrb w2, [x19]
コピー
コピー済み
コピー
コピー済み
add w1,
w1, w2
add w1,
w2, w1, LSL #1
sub w1, w1, #48
sub w1, w1, #48
add x19, x19, #1
add x19, x19, #1
cmp x19, x0
cmp x19, x0
blo G_M47917_IG08
blo G_M47917_IG08
コピー
コピー済み
コピー
コピー済み
;; bbWeight=4 PerfScore
38
.00
;; bbWeight=4 PerfScore
36
.00
G_M47917_IG09: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref
G_M47917_IG09: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref
mov w0, w1
mov w0, w1
;; bbWeight=1 PerfScore 0.50
;; bbWeight=1 PerfScore 0.50
G_M47917_IG10: ; , epilog, nogc, extend
G_M47917_IG10: ; , epilog, nogc, extend
ldp x19, x20, [sp,#16]
ldp x19, x20, [sp,#16]
ldp fp, lr, [sp],#32
ldp fp, lr, [sp],#32
ret lr
ret lr
;; bbWeight=1 PerfScore 3.00
;; bbWeight=1 PerfScore 3.00
コピー
コピー済み
コピー
コピー済み
; Total bytes of code
156
, prolog size 20, PerfScore
76.60
, instruction count
39
, allocated bytes for code
156
(MethodHash=afe144d2) for method System.Number:DigitsToUInt32(long,int):int
; Total bytes of code
148
, prolog size 20, PerfScore
73.80
, instruction count
37
, allocated bytes for code
148
(MethodHash=afe144d2) for method System.Number:DigitsToUInt32(long,int):int
; ============================================================
; ============================================================
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 : 2
Code Words : 2
Epilog Count : 1
Epilog Count : 1
E bit : 0
E bit : 0
X bit : 0
X bit : 0
Vers : 0
Vers : 0
コピー
コピー済み
コピー
コピー済み
Function Length :
39
(0x0002
7
) Actual length =
156
(0x00009
c
)
Function Length :
37
(0x0002
5
) Actual length =
148
(0x00009
4
)
---- 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)
保存された差分
原文
ファイルを開く
; Assembly listing for method System.Number:DigitsToUInt32(long,int):int ; Emitting BLENDED_CODE for generic ARM64 CPU - Windows ; optimized code ; fp based frame ; fully interruptible ; No matching PGO data ; 0 inlinees with PGO data; 1 single block inlinees; 1 inlinees without PGO data ; Final local variable assignments ; ; V00 arg0 [V00,T00] ( 11, 23 ) long -> x19 ; V01 arg1 [V01,T02] ( 5, 4.50) int -> x20 single-def ; V02 loc0 [V02,T03] ( 3, 6 ) long -> x0 ; V03 loc1 [V03,T01] ( 4, 10 ) int -> x1 ;# V04 OutArgs [V04 ] ( 1, 1 ) lclBlk ( 0) [sp+00H] "OutgoingArgSpace" ; V05 tmp1 [V05,T07] ( 3, 2 ) int -> x0 ; V06 tmp2 [V06,T05] ( 2, 4 ) bool -> x0 "Inlining Arg" ;* V07 tmp3 [V07,T08] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" ; V08 tmp4 [V08,T04] ( 3, 4 ) ref -> x1 class-hnd single-def "Inlining Arg" ; V09 cse0 [V09,T06] ( 2, 2 ) ref -> x1 "CSE - aggressive" ; ; Lcl frame size = 0 G_M47917_IG01: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, nogc <-- Prolog IG stp fp, lr, [sp,#-32]! stp x19, x20, [sp,#16] mov fp, sp mov x19, x0 mov w20, w1 ;; bbWeight=1 PerfScore 3.50 G_M47917_IG02: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz cmp w20, #1 blt G_M47917_IG04 ;; bbWeight=1 PerfScore 1.50 G_M47917_IG03: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref cmp w20, #9 cset x0, le b G_M47917_IG05 ;; bbWeight=0.50 PerfScore 1.00 G_M47917_IG04: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref mov w0, wzr ;; bbWeight=0.50 PerfScore 0.25 G_M47917_IG05: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz uxtb w0, w0 movz x1, #0xd1ffab1e movk x1, #0xd1ffab1e LSL #16 movk x1, #0xd1ffab1e LSL #32 ldr x1, [x1] ; gcrRegs +[x1] cbnz w0, G_M47917_IG07 ;; bbWeight=1 PerfScore 6.00 G_M47917_IG06: ; gcrefRegs=0002 {x1}, byrefRegs=0000 {}, byref mov x0, x1 ; gcrRegs +[x0] bl hackishModuleName:hackishMethodName() ; gcrRegs -[x0-x1] ; gcr arg pop 0 ;; bbWeight=0.50 PerfScore 0.75 G_M47917_IG07: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz sxtw x0, w20 add x0, x19, x0 ldrb w1, [x19] sub w1, w1, #48 add x19, x19, #1 cmp x19, x0 bhs G_M47917_IG09 ;; bbWeight=1 PerfScore 6.50 G_M47917_IG08: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz mov x2, #5 mul w1, w1, w2 lsl w1, w1, #1 ldrb w2, [x19] add w1, w1, w2 sub w1, w1, #48 add x19, x19, #1 cmp x19, x0 blo G_M47917_IG08 ;; bbWeight=4 PerfScore 38.00 G_M47917_IG09: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref mov w0, w1 ;; bbWeight=1 PerfScore 0.50 G_M47917_IG10: ; , epilog, nogc, extend ldp x19, x20, [sp,#16] ldp fp, lr, [sp],#32 ret lr ;; bbWeight=1 PerfScore 3.00 ; Total bytes of code 156, prolog size 20, PerfScore 76.60, instruction count 39, allocated bytes for code 156 (MethodHash=afe144d2) for method System.Number:DigitsToUInt32(long,int):int ; ============================================================ Unwind Info: >> Start offset : 0x000000 (not in unwind data) >> End offset : 0xd1ffab1e (not in unwind data) Code Words : 2 Epilog Count : 1 E bit : 0 X bit : 0 Vers : 0 Function Length : 39 (0x00027) Actual length = 156 (0x00009c) ---- 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) ---- Unwind codes ---- E1 set_fp; mov fp, sp ---- Epilog start at index 1 ---- C8 02 save_regp X#0 Z#2 (0x02); stp x19, x20, [sp, #16] 83 save_fplr_x #3 (0x03); stp fp, lr, [sp, #-32]! E4 end E4 end E4 end E4 end
変更されたテキスト
ファイルを開く
; Assembly listing for method System.Number:DigitsToUInt32(long,int):int ; Emitting BLENDED_CODE for generic ARM64 CPU - Windows ; optimized code ; fp based frame ; fully interruptible ; No matching PGO data ; 0 inlinees with PGO data; 1 single block inlinees; 1 inlinees without PGO data ; Final local variable assignments ; ; V00 arg0 [V00,T00] ( 11, 23 ) long -> x19 ; V01 arg1 [V01,T02] ( 5, 4.50) int -> x20 single-def ; V02 loc0 [V02,T03] ( 3, 6 ) long -> x0 ; V03 loc1 [V03,T01] ( 4, 10 ) int -> x1 ;# V04 OutArgs [V04 ] ( 1, 1 ) lclBlk ( 0) [sp+00H] "OutgoingArgSpace" ; V05 tmp1 [V05,T07] ( 3, 2 ) int -> x0 ; V06 tmp2 [V06,T05] ( 2, 4 ) bool -> x0 "Inlining Arg" ;* V07 tmp3 [V07,T08] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" ; V08 tmp4 [V08,T04] ( 3, 4 ) ref -> x1 class-hnd single-def "Inlining Arg" ; V09 cse0 [V09,T06] ( 2, 2 ) ref -> x1 "CSE - aggressive" ; ; Lcl frame size = 0 G_M47917_IG01: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, nogc <-- Prolog IG stp fp, lr, [sp,#-32]! stp x19, x20, [sp,#16] mov fp, sp mov x19, x0 mov w20, w1 ;; bbWeight=1 PerfScore 3.50 G_M47917_IG02: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz cmp w20, #1 blt G_M47917_IG04 ;; bbWeight=1 PerfScore 1.50 G_M47917_IG03: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref cmp w20, #9 cset x0, le b G_M47917_IG05 ;; bbWeight=0.50 PerfScore 1.00 G_M47917_IG04: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref mov w0, wzr ;; bbWeight=0.50 PerfScore 0.25 G_M47917_IG05: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz uxtb w0, w0 movz x1, #0xd1ffab1e movk x1, #0xd1ffab1e LSL #16 movk x1, #0xd1ffab1e LSL #32 ldr x1, [x1] ; gcrRegs +[x1] cbnz w0, G_M47917_IG07 ;; bbWeight=1 PerfScore 6.00 G_M47917_IG06: ; gcrefRegs=0002 {x1}, byrefRegs=0000 {}, byref mov x0, x1 ; gcrRegs +[x0] bl hackishModuleName:hackishMethodName() ; gcrRegs -[x0-x1] ; gcr arg pop 0 ;; bbWeight=0.50 PerfScore 0.75 G_M47917_IG07: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz add x0, x19, w20, SXTW ldrb w1, [x19] sub w1, w1, #48 add x19, x19, #1 cmp x19, x0 bhs G_M47917_IG09 ;; bbWeight=1 PerfScore 6.50 G_M47917_IG08: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref, isz mov x2, #5 mul w1, w1, w2 ldrb w2, [x19] add w1, w2, w1, LSL #1 sub w1, w1, #48 add x19, x19, #1 cmp x19, x0 blo G_M47917_IG08 ;; bbWeight=4 PerfScore 36.00 G_M47917_IG09: ; gcrefRegs=0000 {}, byrefRegs=0000 {}, byref mov w0, w1 ;; bbWeight=1 PerfScore 0.50 G_M47917_IG10: ; , epilog, nogc, extend ldp x19, x20, [sp,#16] ldp fp, lr, [sp],#32 ret lr ;; bbWeight=1 PerfScore 3.00 ; Total bytes of code 148, prolog size 20, PerfScore 73.80, instruction count 37, allocated bytes for code 148 (MethodHash=afe144d2) for method System.Number:DigitsToUInt32(long,int):int ; ============================================================ Unwind Info: >> Start offset : 0x000000 (not in unwind data) >> End offset : 0xd1ffab1e (not in unwind data) Code Words : 2 Epilog Count : 1 E bit : 0 X bit : 0 Vers : 0 Function Length : 37 (0x00025) Actual length = 148 (0x000094) ---- 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) ---- Unwind codes ---- E1 set_fp; mov fp, sp ---- Epilog start at index 1 ---- C8 02 save_regp X#0 Z#2 (0x02); stp x19, x20, [sp, #16] 83 save_fplr_x #3 (0x03); stp fp, lr, [sp, #-32]! E4 end E4 end E4 end E4 end
違いを見つける