Diff
checker
テキスト
テキスト
画像
ドキュメント
Excel
フォルダ
Legal
Enterprise
デスクトップ
料金
ログイン
Diffchecker デスクトップのダウンロード
テキスト比較
2 つのテキスト ファイルの違いを見つける
ツール
履歴
ライブエディター
未変更行を折りたたむ
折り返しなし
レイアウト
分割
統合
比較精度
スマート
単語
文字
シンタックスハイライト
構文を選択
無視
テキスト変換
最初の差分へ移動
入力を編集
Diffchecker Desktop
Diffcheckerを実行する最も安全な方法。Diffchecker Desktopアプリを入手:あなたの差分はコンピューターから出ることはありません!
Desktopを入手
ExecCtx.RunInternal()
作成日
5 年前
差分は期限切れになりません
クリア
エクスポート
共有
説明
77 削除
行
合計
削除
文字
合計
削除
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
155 行
すべてコピー
73 追加
行
合計
追加
文字
合計
追加
この機能を引き続き使用するには、アップグレードしてください
Diff
checker
Pro
価格を見る
152 行
すべてコピー
; Assembly listing for method System.Threading.ExecutionContext:RunInternal(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object)
; Assembly listing for method System.Threading.ExecutionContext:RunInternal(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object)
; Emitting BLENDED_CODE for X64 CPU with AVX - Windows
; Emitting BLENDED_CODE for X64 CPU with AVX - Windows
; optimized code
; optimized code
; rbp based frame
; rbp based frame
; fully interruptible
; fully interruptible
; Final local variable assignments
; Final local variable assignments
;
;
; V00 arg0 [V00,T00] ( 7, 7 ) ref -> rsi class-hnd
; V00 arg0 [V00,T00] ( 7, 7 ) ref -> rsi class-hnd
; V01 arg1 [V01,T04] ( 3, 3 ) ref -> rdi class-hnd
; V01 arg1 [V01,T04] ( 3, 3 ) ref -> rdi class-hnd
; V02 arg2 [V02,T05] ( 3, 3 ) ref -> rbx class-hnd
; V02 arg2 [V02,T05] ( 3, 3 ) ref -> rbx class-hnd
コピー
コピー済み
コピー
コピー済み
; V03 loc0 [V03,
T03] ( 5, 5 ) ref -> rcx class-hnd
; V03 loc0 [V03,
T01
] (
8
,
7
) ref -> [rbp-0x20] EH
class-hnd EH-live
; V04 loc1 [V04,T10
] (
3
,
3
) ref -> [rbp-0x20] EH
do-not-enreg[]
class-hnd EH-live
; V0
4
loc
1
[V0
4
,T0
3
] (
5
,
5
) ref ->
rdx
class-hnd
; V0
5
loc
2
[V0
5
,T0
1
] (
7
,
7
) ref ->
r8
class-hnd
; V0
5
loc
2
[V0
5,T06
] (
5
,
4
) ref -> [rbp-0x28] EH
class-hnd EH-live
; V0
6
loc
3
[V0
6,T11
] (
3
,
3
) ref -> [rbp-0x28] EH
do-not-enreg[]
class-hnd EH-live
; V0
6
loc
3
[V0
6
,T1
1
] ( 3,
2
) ref -> [rbp-0x30] EH
class-hnd EH-live
; V0
7
loc
4
[V0
7
,T1
2
] ( 3,
3
) ref -> [rbp-0x30] EH
do-not-enreg[]
class-hnd EH-live
; V0
7
loc
4
[V0
7
,T09] ( 4, 3 ) ref -> [rbp-0x38] EH do-not-enreg[
H
] class-hnd EH-live
; V0
8
loc
5
[V0
8
,T09] ( 4, 3 ) ref -> [rbp-0x38] EH do-not-enreg[
] class-hnd EH-live
; V0
8
loc
5 [V08,T10
] ( 3, 3 ) ref -> r8 class-hnd
; V0
9 loc6 [V09,T14] ( 2, 2 ) ref -> rdx class-hnd
;*
V09
loc
6
[
V09
] ( 0, 0 ) ref -> zero-ref class-hnd
; V10
loc
7 [V10,T06] ( 4, 4 ) ref -> rsi class-hnd
; V1
0
OutArgs [V1
0
] ( 1, 1 ) lclBlk (32) [rsp+0x00] "OutgoingArgSpace"
; V11 loc8 [V11,T15] ( 2, 2 ) ref -> rdx class-hnd
; V1
1
tmp1 [V1
1
,T1
2
] ( 2, 0 ) ref -> rcx class-hnd "impSpillSpecialSideEff"
; V12 loc9 [V12,T13
] ( 3, 3 ) ref -> r8 class-hnd
; V1
2
tmp2 [V1
2
,T07] ( 2, 4 ) ref -> rcx class-hnd "dup spill"
;*
V13
loc
10
[
V13
] ( 0, 0 ) ref -> zero-ref class-hnd
; V1
3
tmp3 [V1
3
,T08] ( 4, 3.50) ref -> rcx
; V1
4
OutArgs [V1
4
] ( 1, 1 ) lclBlk (32) [rsp+0x00] "OutgoingArgSpace"
; V1
4
PSPSym [V1
4
] ( 1, 1 ) long -> [rbp-0x40] do-not-enreg[X] addr-exposed "PSPSym"
; V1
5
tmp1 [V1
5
,T1
6
] ( 2, 0 ) ref -> rcx class-hnd "impSpillSpecialSideEff"
; V1
5
rat0 [V1
5
,T02] ( 3, 6 ) ref -> rdi "delegate invoke call"
; V1
6
tmp2 [V1
6
,T07] ( 2, 4 ) ref -> rcx class-hnd "dup spill"
; V1
7
tmp3 [V1
7
,T08] ( 4, 3.50) ref -> rcx
; V1
8
PSPSym [V1
8
] ( 1, 1 ) long -> [rbp-0x40] do-not-enreg[X] addr-exposed "PSPSym"
; V1
9
rat0 [V1
9
,T02] ( 3, 6 ) ref -> rdi "delegate invoke call"
;
;
; Lcl frame size = 72
; Lcl frame size = 72
G_M28364_IG01:
G_M28364_IG01:
push rbp
push rbp
push rdi
push rdi
push rsi
push rsi
push rbx
push rbx
sub rsp, 72
sub rsp, 72
lea rbp, [rsp+60H]
lea rbp, [rsp+60H]
mov qword ptr [rbp-40H], rsp
mov qword ptr [rbp-40H], rsp
mov rsi, rcx
mov rsi, rcx
mov rdi, rdx
mov rdi, rdx
mov rbx, r8
mov rbx, r8
;; bbWeight=1 PerfScore 6.50
;; bbWeight=1 PerfScore 6.50
G_M28364_IG02:
G_M28364_IG02:
mov rcx, 0xD1FFAB1E
mov rcx, 0xD1FFAB1E
mov edx, 625
mov edx, 625
call CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE
call CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE
mov rcx, gword ptr [rax+24]
mov rcx, gword ptr [rax+24]
test rcx, rcx
test rcx, rcx
jne SHORT G_M28364_IG04
jne SHORT G_M28364_IG04
;; bbWeight=1 PerfScore 4.75
;; bbWeight=1 PerfScore 4.75
G_M28364_IG03:
G_M28364_IG03:
call System.Threading.Thread:InitializeCurrentThread():System.Threading.Thread
call System.Threading.Thread:InitializeCurrentThread():System.Threading.Thread
mov rcx, rax
mov rcx, rax
;; bbWeight=0.50 PerfScore 0.62
;; bbWeight=0.50 PerfScore 0.62
G_M28364_IG04:
G_M28364_IG04:
mov gword ptr [rbp-20H], rcx
mov gword ptr [rbp-20H], rcx
コピー
コピー済み
コピー
コピー済み
mov
r8
, gword ptr [rcx+8]
mov
rdx
, gword ptr [rcx+8]
test
r8, r8
test
rdx, rdx
je SHORT G_M28364_IG05
je SHORT G_M28364_IG05
コピー
コピー済み
コピー
コピー済み
cmp byte ptr [
r8
+25], 0
cmp byte ptr [
rdx
+25], 0
je SHORT G_M28364_IG05
je SHORT G_M28364_IG05
コピー
コピー済み
コピー
コピー済み
xor
r8, r8
xor
rdx, rdx
;; bbWeight=1 PerfScore 7.50
;; bbWeight=1 PerfScore 7.50
G_M28364_IG05:
G_M28364_IG05:
コピー
コピー済み
コピー
コピー済み
mov gword ptr [rbp-28H],
r8
mov gword ptr [rbp-28H],
rdx
mov
rdx
, gword ptr [rcx+16]
mov
r8
, gword ptr [rcx+16]
mov gword ptr [rbp-30H],
rdx
mov gword ptr [rbp-30H],
r8
test rsi, rsi
test rsi, rsi
je SHORT G_M28364_IG06
je SHORT G_M28364_IG06
cmp byte ptr [rsi+25], 0
cmp byte ptr [rsi+25], 0
je SHORT G_M28364_IG06
je SHORT G_M28364_IG06
xor rsi, rsi
xor rsi, rsi
;; bbWeight=1 PerfScore 8.50
;; bbWeight=1 PerfScore 8.50
G_M28364_IG06:
G_M28364_IG06:
コピー
コピー済み
コピー
コピー済み
cmp
r8
, rsi
cmp
rdx
, rsi
je SHORT G_M28364_IG07
je SHORT G_M28364_IG07
mov rdx, rsi
mov rdx, rsi
コピー
コピー済み
コピー
コピー済み
mov r8, gword ptr [rbp-28H]
call System.Threading.ExecutionContext:RestoreChangedContextToThread(System.Threading.Thread,System.Threading.ExecutionContext,System.Threading.ExecutionContext)
call System.Threading.ExecutionContext:RestoreChangedContextToThread(System.Threading.Thread,System.Threading.ExecutionContext,System.Threading.ExecutionContext)
コピー
コピー済み
コピー
コピー済み
;; bbWeight=1 PerfScore
2
.50
mov rcx, gword ptr [rbp-20H]
;; bbWeight=1 PerfScore
4
.50
G_M28364_IG07:
G_M28364_IG07:
コピー
コピー済み
コピー
コピー済み
xor r
c
x, r
c
x
xor r
a
x, r
a
x
mov gword ptr [rbp-38H], r
c
x
mov gword ptr [rbp-38H], r
a
x
;; bbWeight=1 PerfScore 1.25
;; bbWeight=1 PerfScore 1.25
G_M28364_IG08:
G_M28364_IG08:
mov rcx, gword ptr [rdi+8]
mov rcx, gword ptr [rdi+8]
mov rdx, rbx
mov rdx, rbx
call qword ptr [rdi+24]System.Threading.ContextCallback:Invoke(System.Object):this
call qword ptr [rdi+24]System.Threading.ContextCallback:Invoke(System.Object):this
nop
nop
;; bbWeight=1 PerfScore 5.50
;; bbWeight=1 PerfScore 5.50
G_M28364_IG09:
G_M28364_IG09:
コピー
コピー済み
コピー
コピー済み
mov rdx, gword ptr [rbp-30H]
mov rsi, gword ptr [rbp-20H]
mov rcx, gword ptr [rbp-20H]
mov rcx, gword ptr [rbp-20H]
コピー
コピー済み
コピー
コピー済み
mov
rcx
, gword ptr [
rcx+16
]
mov
r8
, gword ptr [
rbp-30H
]
cmp
rcx,
gword ptr [
rbp-30H]
cmp
gword ptr [
rcx+16], r8
je SHORT G_M28364_IG10
je SHORT G_M28364_IG10
コピー
コピー済み
コピー
コピー済み
lea rcx, bword ptr [
rsi
+16]
lea rcx, bword ptr [
rcx
+16]
mov rdx, r8
call CORINFO_HELP_ASSIGN_REF
call CORINFO_HELP_ASSIGN_REF
コピー
コピー済み
コピー
コピー済み
;; bbWeight=1 PerfScore
8.50
mov rcx, gword ptr [rbp-20H]
;; bbWeight=1 PerfScore
7.75
G_M28364_IG10:
G_M28364_IG10:
コピー
コピー済み
コピー
コピー済み
mov r8, gword ptr [rcx+8]
mov rdx, gword ptr [rbp-28H]
mov rdx, gword ptr [rbp-28H]
コピー
コピー済み
コピー
コピー済み
mov r8, gword ptr [rsi+8]
cmp r8,
rdx
cmp r8,
gword ptr [rbp-28H]
je SHORT G_M28364_IG11
je SHORT G_M28364_IG11
コピー
コピー済み
コピー
コピー済み
mov rcx, rsi
call System.Threading.ExecutionContext:RestoreChangedContextToThread(System.Threading.Thread,System.Threading.ExecutionContext,System.Threading.ExecutionContext)
call System.Threading.ExecutionContext:RestoreChangedContextToThread(System.Threading.Thread,System.Threading.ExecutionContext,System.Threading.ExecutionContext)
コピー
コピー済み
コピー
コピー済み
;; bbWeight=1 PerfScore
6
.25
;; bbWeight=1 PerfScore
5
.25
G_M28364_IG11:
G_M28364_IG11:
cmp gword ptr [rbp-38H], 0
cmp gword ptr [rbp-38H], 0
je SHORT G_M28364_IG13
je SHORT G_M28364_IG13
mov rcx, gword ptr [rbp-38H]
mov rcx, gword ptr [rbp-38H]
;; bbWeight=1 PerfScore 3.00
;; bbWeight=1 PerfScore 3.00
G_M28364_IG12:
G_M28364_IG12:
lea rsp, [rbp-18H]
lea rsp, [rbp-18H]
pop rbx
pop rbx
pop rsi
pop rsi
pop rdi
pop rdi
pop rbp
pop rbp
jmp System.Runtime.ExceptionServices.ExceptionDispatchInfo:Throw():this
jmp System.Runtime.ExceptionServices.ExceptionDispatchInfo:Throw():this
;; bbWeight=1 PerfScore 4.50
;; bbWeight=1 PerfScore 4.50
G_M28364_IG13:
G_M28364_IG13:
lea rsp, [rbp-18H]
lea rsp, [rbp-18H]
pop rbx
pop rbx
pop rsi
pop rsi
pop rdi
pop rdi
pop rbp
pop rbp
ret
ret
;; bbWeight=1 PerfScore 3.50
;; bbWeight=1 PerfScore 3.50
G_M28364_IG14:
G_M28364_IG14:
push rbp
push rbp
push rdi
push rdi
push rsi
push rsi
push rbx
push rbx
sub rsp, 40
sub rsp, 40
mov rbp, qword ptr [rcx+32]
mov rbp, qword ptr [rcx+32]
mov qword ptr [rsp+20H], rbp
mov qword ptr [rsp+20H], rbp
lea rbp, [rbp+60H]
lea rbp, [rbp+60H]
;; bbWeight=0 PerfScore 0.00
;; bbWeight=0 PerfScore 0.00
G_M28364_IG15:
G_M28364_IG15:
mov rcx, rdx
mov rcx, rdx
call System.Runtime.ExceptionServices.ExceptionDispatchInfo:Capture(System.Exception):System.Runtime.ExceptionServices.ExceptionDispatchInfo
call System.Runtime.ExceptionServices.ExceptionDispatchInfo:Capture(System.Exception):System.Runtime.ExceptionServices.ExceptionDispatchInfo
mov gword ptr [rbp-38H], rax
mov gword ptr [rbp-38H], rax
lea rax, G_M28364_IG09
lea rax, G_M28364_IG09
;; bbWeight=0 PerfScore 0.00
;; bbWeight=0 PerfScore 0.00
G_M28364_IG16:
G_M28364_IG16:
add rsp, 40
add rsp, 40
pop rbx
pop rbx
pop rsi
pop rsi
pop rdi
pop rdi
pop rbp
pop rbp
ret
ret
;; bbWeight=0 PerfScore 0.00
;; bbWeight=0 PerfScore 0.00
コピー
コピー済み
コピー
コピー済み
; Total bytes of code 27
6
, prolog size 26, PerfScore 90.
48
, instruction count
90
, allocated bytes for code 27
6
(MethodHash=914e9133) for method System.Threading.ExecutionContext:RunInternal(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object)
; Total bytes of code 27
7
, prolog size 26, PerfScore 90.
83
, instruction count
91
, allocated bytes for code 27
7
(MethodHash=914e9133) for method System.Threading.ExecutionContext:RunInternal(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object)
; ============================================================
; ============================================================
保存された差分
原文
ファイルを開く
; Assembly listing for method System.Threading.ExecutionContext:RunInternal(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object) ; Emitting BLENDED_CODE for X64 CPU with AVX - Windows ; optimized code ; rbp based frame ; fully interruptible ; Final local variable assignments ; ; V00 arg0 [V00,T00] ( 7, 7 ) ref -> rsi class-hnd ; V01 arg1 [V01,T04] ( 3, 3 ) ref -> rdi class-hnd ; V02 arg2 [V02,T05] ( 3, 3 ) ref -> rbx class-hnd ; V03 loc0 [V03,T03] ( 5, 5 ) ref -> rcx class-hnd ; V04 loc1 [V04,T10] ( 3, 3 ) ref -> [rbp-0x20] EH do-not-enreg[] class-hnd EH-live ; V05 loc2 [V05,T01] ( 7, 7 ) ref -> r8 class-hnd ; V06 loc3 [V06,T11] ( 3, 3 ) ref -> [rbp-0x28] EH do-not-enreg[] class-hnd EH-live ; V07 loc4 [V07,T12] ( 3, 3 ) ref -> [rbp-0x30] EH do-not-enreg[] class-hnd EH-live ; V08 loc5 [V08,T09] ( 4, 3 ) ref -> [rbp-0x38] EH do-not-enreg[] class-hnd EH-live ; V09 loc6 [V09,T14] ( 2, 2 ) ref -> rdx class-hnd ; V10 loc7 [V10,T06] ( 4, 4 ) ref -> rsi class-hnd ; V11 loc8 [V11,T15] ( 2, 2 ) ref -> rdx class-hnd ; V12 loc9 [V12,T13] ( 3, 3 ) ref -> r8 class-hnd ;* V13 loc10 [V13 ] ( 0, 0 ) ref -> zero-ref class-hnd ; V14 OutArgs [V14 ] ( 1, 1 ) lclBlk (32) [rsp+0x00] "OutgoingArgSpace" ; V15 tmp1 [V15,T16] ( 2, 0 ) ref -> rcx class-hnd "impSpillSpecialSideEff" ; V16 tmp2 [V16,T07] ( 2, 4 ) ref -> rcx class-hnd "dup spill" ; V17 tmp3 [V17,T08] ( 4, 3.50) ref -> rcx ; V18 PSPSym [V18 ] ( 1, 1 ) long -> [rbp-0x40] do-not-enreg[X] addr-exposed "PSPSym" ; V19 rat0 [V19,T02] ( 3, 6 ) ref -> rdi "delegate invoke call" ; ; Lcl frame size = 72 G_M28364_IG01: push rbp push rdi push rsi push rbx sub rsp, 72 lea rbp, [rsp+60H] mov qword ptr [rbp-40H], rsp mov rsi, rcx mov rdi, rdx mov rbx, r8 ;; bbWeight=1 PerfScore 6.50 G_M28364_IG02: mov rcx, 0xD1FFAB1E mov edx, 625 call CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE mov rcx, gword ptr [rax+24] test rcx, rcx jne SHORT G_M28364_IG04 ;; bbWeight=1 PerfScore 4.75 G_M28364_IG03: call System.Threading.Thread:InitializeCurrentThread():System.Threading.Thread mov rcx, rax ;; bbWeight=0.50 PerfScore 0.62 G_M28364_IG04: mov gword ptr [rbp-20H], rcx mov r8, gword ptr [rcx+8] test r8, r8 je SHORT G_M28364_IG05 cmp byte ptr [r8+25], 0 je SHORT G_M28364_IG05 xor r8, r8 ;; bbWeight=1 PerfScore 7.50 G_M28364_IG05: mov gword ptr [rbp-28H], r8 mov rdx, gword ptr [rcx+16] mov gword ptr [rbp-30H], rdx test rsi, rsi je SHORT G_M28364_IG06 cmp byte ptr [rsi+25], 0 je SHORT G_M28364_IG06 xor rsi, rsi ;; bbWeight=1 PerfScore 8.50 G_M28364_IG06: cmp r8, rsi je SHORT G_M28364_IG07 mov rdx, rsi call System.Threading.ExecutionContext:RestoreChangedContextToThread(System.Threading.Thread,System.Threading.ExecutionContext,System.Threading.ExecutionContext) ;; bbWeight=1 PerfScore 2.50 G_M28364_IG07: xor rcx, rcx mov gword ptr [rbp-38H], rcx ;; bbWeight=1 PerfScore 1.25 G_M28364_IG08: mov rcx, gword ptr [rdi+8] mov rdx, rbx call qword ptr [rdi+24]System.Threading.ContextCallback:Invoke(System.Object):this nop ;; bbWeight=1 PerfScore 5.50 G_M28364_IG09: mov rdx, gword ptr [rbp-30H] mov rsi, gword ptr [rbp-20H] mov rcx, gword ptr [rbp-20H] mov rcx, gword ptr [rcx+16] cmp rcx, gword ptr [rbp-30H] je SHORT G_M28364_IG10 lea rcx, bword ptr [rsi+16] call CORINFO_HELP_ASSIGN_REF ;; bbWeight=1 PerfScore 8.50 G_M28364_IG10: mov rdx, gword ptr [rbp-28H] mov r8, gword ptr [rsi+8] cmp r8, gword ptr [rbp-28H] je SHORT G_M28364_IG11 mov rcx, rsi call System.Threading.ExecutionContext:RestoreChangedContextToThread(System.Threading.Thread,System.Threading.ExecutionContext,System.Threading.ExecutionContext) ;; bbWeight=1 PerfScore 6.25 G_M28364_IG11: cmp gword ptr [rbp-38H], 0 je SHORT G_M28364_IG13 mov rcx, gword ptr [rbp-38H] ;; bbWeight=1 PerfScore 3.00 G_M28364_IG12: lea rsp, [rbp-18H] pop rbx pop rsi pop rdi pop rbp jmp System.Runtime.ExceptionServices.ExceptionDispatchInfo:Throw():this ;; bbWeight=1 PerfScore 4.50 G_M28364_IG13: lea rsp, [rbp-18H] pop rbx pop rsi pop rdi pop rbp ret ;; bbWeight=1 PerfScore 3.50 G_M28364_IG14: push rbp push rdi push rsi push rbx sub rsp, 40 mov rbp, qword ptr [rcx+32] mov qword ptr [rsp+20H], rbp lea rbp, [rbp+60H] ;; bbWeight=0 PerfScore 0.00 G_M28364_IG15: mov rcx, rdx call System.Runtime.ExceptionServices.ExceptionDispatchInfo:Capture(System.Exception):System.Runtime.ExceptionServices.ExceptionDispatchInfo mov gword ptr [rbp-38H], rax lea rax, G_M28364_IG09 ;; bbWeight=0 PerfScore 0.00 G_M28364_IG16: add rsp, 40 pop rbx pop rsi pop rdi pop rbp ret ;; bbWeight=0 PerfScore 0.00 ; Total bytes of code 276, prolog size 26, PerfScore 90.48, instruction count 90, allocated bytes for code 276 (MethodHash=914e9133) for method System.Threading.ExecutionContext:RunInternal(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object) ; ============================================================
変更されたテキスト
ファイルを開く
; Assembly listing for method System.Threading.ExecutionContext:RunInternal(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object) ; Emitting BLENDED_CODE for X64 CPU with AVX - Windows ; optimized code ; rbp based frame ; fully interruptible ; Final local variable assignments ; ; V00 arg0 [V00,T00] ( 7, 7 ) ref -> rsi class-hnd ; V01 arg1 [V01,T04] ( 3, 3 ) ref -> rdi class-hnd ; V02 arg2 [V02,T05] ( 3, 3 ) ref -> rbx class-hnd ; V03 loc0 [V03,T01] ( 8, 7 ) ref -> [rbp-0x20] EH class-hnd EH-live ; V04 loc1 [V04,T03] ( 5, 5 ) ref -> rdx class-hnd ; V05 loc2 [V05,T06] ( 5, 4 ) ref -> [rbp-0x28] EH class-hnd EH-live ; V06 loc3 [V06,T11] ( 3, 2 ) ref -> [rbp-0x30] EH class-hnd EH-live ; V07 loc4 [V07,T09] ( 4, 3 ) ref -> [rbp-0x38] EH do-not-enreg[H] class-hnd EH-live ; V08 loc5 [V08,T10] ( 3, 3 ) ref -> r8 class-hnd ;* V09 loc6 [V09 ] ( 0, 0 ) ref -> zero-ref class-hnd ; V10 OutArgs [V10 ] ( 1, 1 ) lclBlk (32) [rsp+0x00] "OutgoingArgSpace" ; V11 tmp1 [V11,T12] ( 2, 0 ) ref -> rcx class-hnd "impSpillSpecialSideEff" ; V12 tmp2 [V12,T07] ( 2, 4 ) ref -> rcx class-hnd "dup spill" ; V13 tmp3 [V13,T08] ( 4, 3.50) ref -> rcx ; V14 PSPSym [V14 ] ( 1, 1 ) long -> [rbp-0x40] do-not-enreg[X] addr-exposed "PSPSym" ; V15 rat0 [V15,T02] ( 3, 6 ) ref -> rdi "delegate invoke call" ; ; Lcl frame size = 72 G_M28364_IG01: push rbp push rdi push rsi push rbx sub rsp, 72 lea rbp, [rsp+60H] mov qword ptr [rbp-40H], rsp mov rsi, rcx mov rdi, rdx mov rbx, r8 ;; bbWeight=1 PerfScore 6.50 G_M28364_IG02: mov rcx, 0xD1FFAB1E mov edx, 625 call CORINFO_HELP_GETSHARED_GCTHREADSTATIC_BASE mov rcx, gword ptr [rax+24] test rcx, rcx jne SHORT G_M28364_IG04 ;; bbWeight=1 PerfScore 4.75 G_M28364_IG03: call System.Threading.Thread:InitializeCurrentThread():System.Threading.Thread mov rcx, rax ;; bbWeight=0.50 PerfScore 0.62 G_M28364_IG04: mov gword ptr [rbp-20H], rcx mov rdx, gword ptr [rcx+8] test rdx, rdx je SHORT G_M28364_IG05 cmp byte ptr [rdx+25], 0 je SHORT G_M28364_IG05 xor rdx, rdx ;; bbWeight=1 PerfScore 7.50 G_M28364_IG05: mov gword ptr [rbp-28H], rdx mov r8, gword ptr [rcx+16] mov gword ptr [rbp-30H], r8 test rsi, rsi je SHORT G_M28364_IG06 cmp byte ptr [rsi+25], 0 je SHORT G_M28364_IG06 xor rsi, rsi ;; bbWeight=1 PerfScore 8.50 G_M28364_IG06: cmp rdx, rsi je SHORT G_M28364_IG07 mov rdx, rsi mov r8, gword ptr [rbp-28H] call System.Threading.ExecutionContext:RestoreChangedContextToThread(System.Threading.Thread,System.Threading.ExecutionContext,System.Threading.ExecutionContext) mov rcx, gword ptr [rbp-20H] ;; bbWeight=1 PerfScore 4.50 G_M28364_IG07: xor rax, rax mov gword ptr [rbp-38H], rax ;; bbWeight=1 PerfScore 1.25 G_M28364_IG08: mov rcx, gword ptr [rdi+8] mov rdx, rbx call qword ptr [rdi+24]System.Threading.ContextCallback:Invoke(System.Object):this nop ;; bbWeight=1 PerfScore 5.50 G_M28364_IG09: mov rcx, gword ptr [rbp-20H] mov r8, gword ptr [rbp-30H] cmp gword ptr [rcx+16], r8 je SHORT G_M28364_IG10 lea rcx, bword ptr [rcx+16] mov rdx, r8 call CORINFO_HELP_ASSIGN_REF mov rcx, gword ptr [rbp-20H] ;; bbWeight=1 PerfScore 7.75 G_M28364_IG10: mov r8, gword ptr [rcx+8] mov rdx, gword ptr [rbp-28H] cmp r8, rdx je SHORT G_M28364_IG11 call System.Threading.ExecutionContext:RestoreChangedContextToThread(System.Threading.Thread,System.Threading.ExecutionContext,System.Threading.ExecutionContext) ;; bbWeight=1 PerfScore 5.25 G_M28364_IG11: cmp gword ptr [rbp-38H], 0 je SHORT G_M28364_IG13 mov rcx, gword ptr [rbp-38H] ;; bbWeight=1 PerfScore 3.00 G_M28364_IG12: lea rsp, [rbp-18H] pop rbx pop rsi pop rdi pop rbp jmp System.Runtime.ExceptionServices.ExceptionDispatchInfo:Throw():this ;; bbWeight=1 PerfScore 4.50 G_M28364_IG13: lea rsp, [rbp-18H] pop rbx pop rsi pop rdi pop rbp ret ;; bbWeight=1 PerfScore 3.50 G_M28364_IG14: push rbp push rdi push rsi push rbx sub rsp, 40 mov rbp, qword ptr [rcx+32] mov qword ptr [rsp+20H], rbp lea rbp, [rbp+60H] ;; bbWeight=0 PerfScore 0.00 G_M28364_IG15: mov rcx, rdx call System.Runtime.ExceptionServices.ExceptionDispatchInfo:Capture(System.Exception):System.Runtime.ExceptionServices.ExceptionDispatchInfo mov gword ptr [rbp-38H], rax lea rax, G_M28364_IG09 ;; bbWeight=0 PerfScore 0.00 G_M28364_IG16: add rsp, 40 pop rbx pop rsi pop rdi pop rbp ret ;; bbWeight=0 PerfScore 0.00 ; Total bytes of code 277, prolog size 26, PerfScore 90.83, instruction count 91, allocated bytes for code 277 (MethodHash=914e9133) for method System.Threading.ExecutionContext:RunInternal(System.Threading.ExecutionContext,System.Threading.ContextCallback,System.Object) ; ============================================================
違いを見つける