Untitled Diff
60 lines
; Assembly listing for method DataSetUtil:IsCatchableExceptionType(System.Exception):bool
; Assembly listing for method DataSetUtil:IsCatchableExceptionType(System.Exception):bool
; 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
; 0 inlinees with PGO data; 1 single block inlinees; 0 inlinees without PGO data
; 0 inlinees with PGO data; 6 single block inlinees; 0 inlinees without PGO data
; Final local variable assignments
; Final local variable assignments
;
;
; V00 arg0 [V00,T00] ( 4, 4 ) ref -> rcx class-hnd single-def
; V00 arg0 [V00,T00] ( 4, 4 ) ref -> rcx class-hnd single-def
; V01 loc0 [V01,T01] ( 7, 4.50) ref -> rax class-hnd single-def
; V01 loc0 [V01,T01] ( 7, 4.50) ref -> rax class-hnd single-def
; V02 OutArgs [V02 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace"
; V02 OutArgs [V02 ] ( 1, 1 ) lclBlk (32) [rsp+00H] "OutgoingArgSpace"
;* V03 tmp1 [V03,T02] ( 0, 0 ) ref -> zero-ref single-def "argument with side effect"
;
;
; Lcl frame size = 40
; Lcl frame size = 40
G_M21437_IG01:
G_M21437_IG01:
sub rsp, 40
sub rsp, 40
;; size=4 bbWeight=1 PerfScore 0.25
;; size=4 bbWeight=1 PerfScore 0.25
G_M21437_IG02:
G_M21437_IG02:
cmp byte ptr [rcx], cl
cmp byte ptr [rcx], cl
call System.Object:GetType():System.Type:this
call System.Object:GetType():System.Type:this
mov rcx, 0xD1FFAB1E ; const ptr
mov rdx, 0xD1FFAB1E ; 'System.StackOverflowException'
cmp rax, gword ptr [rcx]
cmp rax, rdx
je SHORT G_M21437_IG05
je SHORT G_M21437_IG05
;; size=22 bbWeight=1 PerfScore 8.25
;; size=22 bbWeight=1 PerfScore 5.50
G_M21437_IG03:
G_M21437_IG03:
mov rcx, 0xD1FFAB1E ; const ptr
mov rdx, 0xD1FFAB1E ; 'System.OutOfMemoryException'
cmp rax, gword ptr [rcx]
cmp rax, rdx
je SHORT G_M21437_IG05
je SHORT G_M21437_IG05
mov rcx, 0xD1FFAB1E ; const ptr
mov rdx, 0xD1FFAB1E ; 'System.Threading.ThreadAbortException'
cmp rax, gword ptr [rcx]
cmp rax, rdx
je SHORT G_M21437_IG05
je SHORT G_M21437_IG05
mov rcx, 0xD1FFAB1E ; const ptr
mov rdx, 0xD1FFAB1E ; 'System.NullReferenceException'
cmp rax, gword ptr [rcx]
cmp rax, rdx
je SHORT G_M21437_IG05
je SHORT G_M21437_IG05
mov rcx, 0xD1FFAB1E ; const ptr
mov rdx, 0xD1FFAB1E ; 'System.AccessViolationException'
cmp rax, gword ptr [rcx]
cmp rax, rdx
je SHORT G_M21437_IG05
je SHORT G_M21437_IG05
mov rcx, 0xD1FFAB1E ; const ptr
mov rcx, gword ptr [rcx]
mov rdx, rax
mov rdx, rax
call [System.RuntimeType:IsAssignableFrom(System.Type):bool:this]
mov rcx, 0xD1FFAB1E ; 'System.Security.SecurityException'
mov rax, 0xD1FFAB1E ; 'System.Security.SecurityException'
mov rax, qword ptr [rax]
mov rax, qword ptr [rax+A8H]
call [rax+28H]System.Type:IsAssignableFrom(System.Type):bool:this
test eax, eax
test eax, eax
sete al
sete al
movzx rax, al
movzx rax, al
;; size=90 bbWeight=0.50 PerfScore 12.00
;; size=104 bbWeight=0.50 PerfScore 7.62
G_M21437_IG04:
G_M21437_IG04:
add rsp, 40
add rsp, 40
ret
ret
;; size=5 bbWeight=0.50 PerfScore 0.62
;; size=5 bbWeight=0.50 PerfScore 0.62
G_M21437_IG05:
G_M21437_IG05:
xor eax, eax
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
;; size=2 bbWeight=0.50 PerfScore 0.12
G_M21437_IG06:
G_M21437_IG06:
add rsp, 40
add rsp, 40
ret
ret
;; size=5 bbWeight=0.50 PerfScore 0.62
;; size=5 bbWeight=0.50 PerfScore 0.62
; Total bytes of code 128, prolog size 4, PerfScore 34.68, instruction count 30, allocated bytes for code 128 (MethodHash=1a9cac42) for method DataSetUtil:IsCatchableExceptionType(System.Exception):bool
; Total bytes of code 142, prolog size 4, PerfScore 28.95, instruction count 32, allocated bytes for code 142 (MethodHash=1a9cac42) for method DataSetUtil:IsCatchableExceptionType(System.Exception):bool
; ============================================================
; ============================================================