-148 (-18.50 % of base) - System.Text.Json.Serialization.Metadata.JsonTypeInfo:CreateJsonTypeInfo[System.Nullable`1[int]](System.Text.Json.JsonSerializerOptions):System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Nullable`1[int]]
; Assembly listing for method System.Text.Json.Serialization.Metadata.JsonTypeInfo:CreateJsonTypeInfo[System.Nullable`1[int]](System.Text.Json.JsonSerializerOptions):System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Nullable`1[int]] (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX512 - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 3 single block inlinees; 12 inlinees without PGO data
; Final local variable assignments
;
-; V00 arg0 [V00,T04] ( 6, 5.50) ref -> rbx class-hnd single-def <System.Text.Json.JsonSerializerOptions>
+; V00 arg0 [V00,T03] ( 6, 5.50) ref -> rbx class-hnd single-def <System.Text.Json.JsonSerializerOptions>
;# V01 OutArgs [V01 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V02 tmp1 [V02,T03] ( 4, 8 ) ref -> r13 class-hnd exact single-def "NewObj constructor temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Nullable`1[int]]>
+; V02 tmp1 [V02,T02] ( 4, 8 ) ref -> r13 class-hnd exact single-def "NewObj constructor temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Nullable`1[int]]>
;* V03 tmp2 [V03 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline return value spill temp" <System.Text.Json.Serialization.JsonConverter>
; V04 tmp3 [V04,T01] ( 13, 10 ) ref -> r14 class-hnd "Inline stloc first use temp" <System.Text.Json.Serialization.JsonConverter>
;* V05 tmp4 [V05 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.JsonConverter>
-; V06 tmp5 [V06,T05] ( 4, 7 ) ref -> r14 class-hnd "Inlining Arg" <System.Text.Json.Serialization.JsonConverter>
+; V06 tmp5 [V06,T04] ( 4, 7 ) ref -> r14 class-hnd "Inlining Arg" <System.Text.Json.Serialization.JsonConverter>
; V07 tmp6 [V07,T07] ( 6, 3 ) ref -> r13 class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.JsonConverterFactory>
;* V08 tmp7 [V08 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.JsonConverter>
-; V09 tmp8 [V09,T11] ( 4, 2 ) ref -> r14 class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.JsonConverter>
-; V10 tmp9 [V10,T16] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
-; V11 tmp10 [V11,T00] ( 12, 13 ) ref -> r12 class-hnd single-def "Inlining Arg" <System.Type>
-; V12 tmp11 [V12,T12] ( 3, 2 ) ubyte -> rax "Inline return value spill temp"
+; V09 tmp8 [V09,T10] ( 4, 2 ) ref -> r14 class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.JsonConverter>
+; V10 tmp9 [V10,T13] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
+; V11 tmp10 [V11,T00] ( 9, 12 ) ref -> r12 class-hnd single-def "Inlining Arg" <System.Type>
+; V12 tmp11 [V12,T12] ( 2, 2 ) ubyte -> rax "Inline return value spill temp"
;* V13 tmp12 [V13 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V14 tmp13 [V14,T17] ( 3, 1.50) ubyte -> rax "Inline return value spill temp"
+; V14 tmp13 [V14,T14] ( 3, 1.50) ubyte -> rax "Inline return value spill temp"
;* V15 tmp14 [V15 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "non-inline candidate call" <System.RuntimeType>
-;* V16 tmp15 [V16,T21] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V17 tmp16 [V17,T20] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
+;* V16 tmp15 [V16,T17] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V17 tmp16 [V17,T16] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V18 tmp17 [V18 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Inline stloc first use temp" <System.RuntimeType>
-; V19 tmp18 [V19,T15] ( 2, 2 ) int -> r12 "non-inline candidate call"
-; V20 tmp19 [V20,T18] ( 3, 1.50) ubyte -> rax "Inline return value spill temp"
+;* V19 tmp18 [V19 ] ( 0, 0 ) int -> zero-ref "non-inline candidate call"
+;* V20 tmp19 [V20,T18] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V21 tmp20 [V21,T06] ( 5, 5 ) ref -> r13 class-hnd single-def "Inlining Arg" <System.Type>
-; V22 tmp21 [V22,T08] ( 3, 3 ) ref -> rax single-def "arr expr"
-; V23 tmp22 [V23,T13] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
-; V24 tmp23 [V24,T09] ( 3, 3 ) ref -> rax single-def "arr expr"
-; V25 tmp24 [V25,T14] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
-; V26 tmp25 [V26,T22] ( 2, 0 ) ref -> rdi single-def "argument with side effect"
-; V27 cse0 [V27,T19] ( 3, 1.50) long -> [rbp-0x30] "CSE #06: moderate"
-; V28 cse1 [V28,T10] ( 3, 2.50) long -> r13 "CSE #08: moderate"
-; V29 cse2 [V29,T02] ( 14, 8 ) ref -> r15 "CSE #01: aggressive"
+;* V22 tmp21 [V22 ] ( 0, 0 ) ref -> zero-ref "arr expr"
+;* V23 tmp22 [V23 ] ( 0, 0 ) ref -> zero-ref "argument with side effect"
+; V24 tmp23 [V24,T08] ( 3, 3 ) ref -> rax single-def "arr expr"
+; V25 tmp24 [V25,T11] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
+; V26 tmp25 [V26,T19] ( 2, 0 ) ref -> rdi single-def "argument with side effect"
+; V27 cse0 [V27,T15] ( 3, 1.50) long -> [rbp-0x30] "CSE #04: moderate"
+; V28 cse1 [V28,T09] ( 3, 2.50) long -> r13 "CSE #06: moderate"
+; V29 cse2 [V29,T05] ( 11, 6.50) ref -> r15 "CSE #01: aggressive"
;
; Lcl frame size = 8
G_M62242_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
push rax
lea rbp, [rsp+0x30]
mov rbx, rdi
;; size=19 bbWeight=1 PerfScore 7.75
G_M62242_IG02:
test rbx, rbx
- je G_M62242_IG25
+ je G_M62242_IG19
mov rdi, rbx
mov r15, 0xD1FFAB1E ; 'System.Nullable`1[System.Int32]'
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializerOptions:GetConverterFromList(System.Type):System.Text.Json.Serialization.JsonConverter:this
call [rax]System.Text.Json.JsonSerializerOptions:GetConverterFromList(System.Type):System.Text.Json.Serialization.JsonConverter:this
mov r14, rax
test r14, r14
jne SHORT G_M62242_IG04
;; size=45 bbWeight=1 PerfScore 6.75
G_M62242_IG03:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver:GetBuiltInConverter(System.Type):System.Text.Json.Serialization.JsonConverter
call [rax]System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver:GetBuiltInConverter(System.Type):System.Text.Json.Serialization.JsonConverter
mov r14, rax
;; size=18 bbWeight=0.50 PerfScore 1.88
G_M62242_IG04:
mov rsi, r14
mov rdi, 0xD1FFAB1E ; System.Text.Json.Serialization.JsonConverterFactory
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
mov r13, rax
test r13, r13
je SHORT G_M62242_IG06
;; size=33 bbWeight=1 PerfScore 5.25
G_M62242_IG05:
mov rdi, r13
mov rdx, rbx
mov rsi, r15
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x60]
call [rax]System.Text.Json.Serialization.JsonConverterFactory:CreateConverter(System.Type,System.Text.Json.JsonSerializerOptions):System.Text.Json.Serialization.JsonConverter:this
mov r14, rax
test r14, r14
- je G_M62242_IG21
+ je G_M62242_IG15
mov rsi, r14
mov rdi, 0xD1FFAB1E ; System.Text.Json.Serialization.JsonConverterFactory
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- jne G_M62242_IG24
+ jne G_M62242_IG18
;; size=65 bbWeight=0.50 PerfScore 7.12
G_M62242_IG06:
mov rdi, r14
mov rax, qword ptr [r14]
mov r13, qword ptr [rax+0x40]
call [r13+0x20]System.Text.Json.Serialization.JsonConverter:get_Type():System.Type:this
mov r12, rax
- mov rdi, r15
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- call [rax]System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
- cmp rax, rdi
- jne SHORT G_M62242_IG08
- ;; size=47 bbWeight=1 PerfScore 12.50
-G_M62242_IG07:
- mov rdi, r12
- mov rax, 0xD1FFAB1E ; code for System.Type:get_IsInterface():ubyte:this
- cmp dword ptr [rdi], edi
- call [rax]System.Type:get_IsInterface():ubyte:this
- test eax, eax
- jne SHORT G_M62242_IG09
- ;; size=21 bbWeight=0.50 PerfScore 3.88
-G_M62242_IG08:
mov rdi, r12
mov rsi, r15
mov rax, qword ptr [r12]
mov rax, qword ptr [rax+0xB0]
call [rax+0x20]System.Type:IsAssignableFrom(System.Type):ubyte:this
- jmp SHORT G_M62242_IG10
- ;; size=22 bbWeight=0.50 PerfScore 4.75
-G_M62242_IG09:
- mov rdi, r15
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericArguments():System.Type[]:this
- call [rax]System.RuntimeType:GetGenericArguments():System.Type[]:this
- cmp dword ptr [rax+0x08], 0
- jbe G_M62242_IG26
- mov rsi, gword ptr [rax+0x10]
- mov rdi, r12
- mov rax, qword ptr [r12]
- mov rax, qword ptr [rax+0xB0]
- call [rax+0x20]System.Type:IsAssignableFrom(System.Type):ubyte:this
- ;; size=46 bbWeight=0.50 PerfScore 8.38
-G_M62242_IG10:
test eax, eax
- jne G_M62242_IG15
- ;; size=8 bbWeight=1 PerfScore 1.25
-G_M62242_IG11:
+ jne G_M62242_IG11
+ ;; size=45 bbWeight=1 PerfScore 16.25
+G_M62242_IG07:
mov rdi, r12
mov rax, qword ptr [r12]
mov rax, qword ptr [rax+0x60]
call [rax+0x08]System.Type:get_IsGenericType():ubyte:this
test eax, eax
- je SHORT G_M62242_IG12
+ je SHORT G_M62242_IG08
mov rdi, r12
mov rax, qword ptr [r12]
mov rax, qword ptr [rax+0x68]
mov qword ptr [rbp-0x30], rax
call [rax+0x18]System.Type:GetGenericTypeDefinition():System.Type:this
mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
cmp rax, rdi
- jne SHORT G_M62242_IG12
+ jne SHORT G_M62242_IG08
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsInterface():ubyte:this
call [rax]System.RuntimeType:get_IsInterface():ubyte:this
test eax, eax
- jne SHORT G_M62242_IG13
+ jne SHORT G_M62242_IG09
;; size=70 bbWeight=0.50 PerfScore 11.50
-G_M62242_IG12:
+G_M62242_IG08:
mov rsi, r12
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:IsAssignableFrom(System.Type):ubyte:this
call [rax]System.RuntimeType:IsAssignableFrom(System.Type):ubyte:this
- jmp SHORT G_M62242_IG14
+ jmp SHORT G_M62242_IG10
;; size=20 bbWeight=0.50 PerfScore 2.88
-G_M62242_IG13:
+G_M62242_IG09:
mov rax, qword ptr [rbp-0x30]
mov rdi, r12
call [rax+0x28]System.Type:GetGenericArguments():System.Type[]:this
cmp dword ptr [rax+0x08], 0
- jbe G_M62242_IG26
+ jbe G_M62242_IG20
mov rsi, gword ptr [rax+0x10]
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:IsAssignableFrom(System.Type):ubyte:this
call [rax]System.RuntimeType:IsAssignableFrom(System.Type):ubyte:this
;; size=39 bbWeight=0.50 PerfScore 6.88
-G_M62242_IG14:
+G_M62242_IG10:
test eax, eax
- je G_M62242_IG23
+ je G_M62242_IG17
;; size=8 bbWeight=0.50 PerfScore 0.62
-G_M62242_IG15:
+G_M62242_IG11:
cmp byte ptr [r14+0x17], 0
- je SHORT G_M62242_IG19
+ je SHORT G_M62242_IG13
;; size=7 bbWeight=1 PerfScore 4.00
-G_M62242_IG16:
- mov rdi, r15
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- call [rax]System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
- cmp rax, rdi
- sete r12b
- movzx r12, r12b
+G_M62242_IG12:
mov rdi, r14
call [r13+0x20]System.Text.Json.Serialization.JsonConverter:get_Type():System.Type:this
mov r13, rax
mov rdi, r13
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x60]
call [rax+0x08]System.Type:get_IsGenericType():ubyte:this
test eax, eax
- jne SHORT G_M62242_IG17
- xor eax, eax
- jmp SHORT G_M62242_IG18
- ;; size=68 bbWeight=0.50 PerfScore 9.75
-G_M62242_IG17:
+ je SHORT G_M62242_IG13
mov rdi, r13
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x68]
call [rax+0x18]System.Type:GetGenericTypeDefinition():System.Type:this
mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
cmp rax, rdi
- sete al
- movzx rax, al
- ;; size=33 bbWeight=0.50 PerfScore 4.50
-G_M62242_IG18:
- xor eax, r12d
- jne SHORT G_M62242_IG22
- ;; size=5 bbWeight=0.50 PerfScore 0.62
-G_M62242_IG19:
+ je SHORT G_M62242_IG16
+ ;; size=57 bbWeight=0.50 PerfScore 10.38
+G_M62242_IG13:
mov rdi, 0xD1FFAB1E ; System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Nullable`1[int]]
call CORINFO_HELP_NEWSFAST
mov r13, rax
mov rdi, r13
mov rcx, rbx
mov rdx, r14
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:.ctor(System.Type,System.Text.Json.Serialization.JsonConverter,System.Text.Json.JsonSerializerOptions):this
call [rax]System.Text.Json.Serialization.Metadata.JsonTypeInfo:.ctor(System.Type,System.Text.Json.Serialization.JsonConverter,System.Text.Json.JsonSerializerOptions):this
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Nullable`1[int]]():System.Text.Json.Serialization.JsonConverter`1[System.Nullable`1[int]]:this
call [rax]System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Nullable`1[int]]():System.Text.Json.Serialization.JsonConverter`1[System.Nullable`1[int]]:this
lea rdi, bword ptr [r13+0x140]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rax, r13
;; size=75 bbWeight=1 PerfScore 11.25
-G_M62242_IG20:
+G_M62242_IG14:
add rsp, 8
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=1 PerfScore 4.25
-G_M62242_IG21:
+G_M62242_IG15:
mov rdi, r13
call System.Object:GetType():System.Type:this
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializerConverterFactoryReturnsNull(System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializerConverterFactoryReturnsNull(System.Type)
int3
;; size=24 bbWeight=0 PerfScore 0.00
-G_M62242_IG22:
+G_M62242_IG16:
mov rsi, r14
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConverterCanConvertMultipleTypes(System.Type,System.Text.Json.Serialization.JsonConverter)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConverterCanConvertMultipleTypes(System.Type,System.Text.Json.Serialization.JsonConverter)
int3
;; size=19 bbWeight=0 PerfScore 0.00
-G_M62242_IG23:
+G_M62242_IG17:
mov rdi, r14
call System.Object:GetType():System.Type:this
mov rdi, rax
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializationConverterNotCompatible(System.Type,System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializationConverterNotCompatible(System.Type,System.Type)
int3
;; size=27 bbWeight=0 PerfScore 0.00
-G_M62242_IG24:
+G_M62242_IG18:
mov rdi, r13
call System.Object:GetType():System.Type:this
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializerConverterFactoryReturnsJsonConverterFactorty(System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializerConverterFactoryReturnsJsonConverterFactorty(System.Type)
int3
;; size=24 bbWeight=0 PerfScore 0.00
-G_M62242_IG25:
+G_M62242_IG19:
mov edi, 0x3958
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowArgumentNullException(System.String)
call [rax]System.Text.Json.ThrowHelper:ThrowArgumentNullException(System.String)
int3
;; size=36 bbWeight=0 PerfScore 0.00
-G_M62242_IG26:
+G_M62242_IG20:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 800, prolog size 16, PerfScore 115.75, instruction count 202, allocated bytes for code 800 (MethodHash=17d10cdd) for method System.Text.Json.Serialization.Metadata.JsonTypeInfo:CreateJsonTypeInfo[System.Nullable`1[int]](System.Text.Json.JsonSerializerOptions):System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Nullable`1[int]] (FullOpts)
+; Total bytes of code 652, prolog size 16, PerfScore 96.75, instruction count 167, allocated bytes for code 652 (MethodHash=17d10cdd) for method System.Text.Json.Serialization.Metadata.JsonTypeInfo:CreateJsonTypeInfo[System.Nullable`1[int]](System.Text.Json.JsonSerializerOptions):System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Nullable`1[int]] (FullOpts)
-148 (-18.50 % of base) - System.Text.Json.Serialization.Metadata.JsonTypeInfo:CreateJsonTypeInfo[System.Numerics.Vector`1[float]](System.Text.Json.JsonSerializerOptions):System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Numerics.Vector`1[float]]
; Assembly listing for method System.Text.Json.Serialization.Metadata.JsonTypeInfo:CreateJsonTypeInfo[System.Numerics.Vector`1[float]](System.Text.Json.JsonSerializerOptions):System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Numerics.Vector`1[float]] (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX512 - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 3 single block inlinees; 12 inlinees without PGO data
; Final local variable assignments
;
-; V00 arg0 [V00,T04] ( 6, 5.50) ref -> rbx class-hnd single-def <System.Text.Json.JsonSerializerOptions>
+; V00 arg0 [V00,T03] ( 6, 5.50) ref -> rbx class-hnd single-def <System.Text.Json.JsonSerializerOptions>
;# V01 OutArgs [V01 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V02 tmp1 [V02,T03] ( 4, 8 ) ref -> r13 class-hnd exact single-def "NewObj constructor temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Numerics.Vector`1[float]]>
+; V02 tmp1 [V02,T02] ( 4, 8 ) ref -> r13 class-hnd exact single-def "NewObj constructor temp" <System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Numerics.Vector`1[float]]>
;* V03 tmp2 [V03 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline return value spill temp" <System.Text.Json.Serialization.JsonConverter>
; V04 tmp3 [V04,T01] ( 13, 10 ) ref -> r14 class-hnd "Inline stloc first use temp" <System.Text.Json.Serialization.JsonConverter>
;* V05 tmp4 [V05 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.JsonConverter>
-; V06 tmp5 [V06,T05] ( 4, 7 ) ref -> r14 class-hnd "Inlining Arg" <System.Text.Json.Serialization.JsonConverter>
+; V06 tmp5 [V06,T04] ( 4, 7 ) ref -> r14 class-hnd "Inlining Arg" <System.Text.Json.Serialization.JsonConverter>
; V07 tmp6 [V07,T07] ( 6, 3 ) ref -> r13 class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.JsonConverterFactory>
;* V08 tmp7 [V08 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Text.Json.Serialization.JsonConverter>
-; V09 tmp8 [V09,T11] ( 4, 2 ) ref -> r14 class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.JsonConverter>
-; V10 tmp9 [V10,T16] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
-; V11 tmp10 [V11,T00] ( 12, 13 ) ref -> r12 class-hnd single-def "Inlining Arg" <System.Type>
-; V12 tmp11 [V12,T12] ( 3, 2 ) ubyte -> rax "Inline return value spill temp"
+; V09 tmp8 [V09,T10] ( 4, 2 ) ref -> r14 class-hnd single-def "Inline stloc first use temp" <System.Text.Json.Serialization.JsonConverter>
+; V10 tmp9 [V10,T13] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
+; V11 tmp10 [V11,T00] ( 9, 12 ) ref -> r12 class-hnd single-def "Inlining Arg" <System.Type>
+; V12 tmp11 [V12,T12] ( 2, 2 ) ubyte -> rax "Inline return value spill temp"
;* V13 tmp12 [V13 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V14 tmp13 [V14,T17] ( 3, 1.50) ubyte -> rax "Inline return value spill temp"
+; V14 tmp13 [V14,T14] ( 3, 1.50) ubyte -> rax "Inline return value spill temp"
;* V15 tmp14 [V15 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "non-inline candidate call" <System.RuntimeType>
-;* V16 tmp15 [V16,T21] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V17 tmp16 [V17,T20] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
+;* V16 tmp15 [V16,T17] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V17 tmp16 [V17,T16] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
;* V18 tmp17 [V18 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Inline stloc first use temp" <System.RuntimeType>
-; V19 tmp18 [V19,T15] ( 2, 2 ) int -> r12 "non-inline candidate call"
-; V20 tmp19 [V20,T18] ( 3, 1.50) ubyte -> rax "Inline return value spill temp"
+;* V19 tmp18 [V19 ] ( 0, 0 ) int -> zero-ref "non-inline candidate call"
+;* V20 tmp19 [V20,T18] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V21 tmp20 [V21,T06] ( 5, 5 ) ref -> r13 class-hnd single-def "Inlining Arg" <System.Type>
-; V22 tmp21 [V22,T08] ( 3, 3 ) ref -> rax single-def "arr expr"
-; V23 tmp22 [V23,T13] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
-; V24 tmp23 [V24,T09] ( 3, 3 ) ref -> rax single-def "arr expr"
-; V25 tmp24 [V25,T14] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
-; V26 tmp25 [V26,T22] ( 2, 0 ) ref -> rdi single-def "argument with side effect"
-; V27 cse0 [V27,T19] ( 3, 1.50) long -> [rbp-0x30] "CSE #06: moderate"
-; V28 cse1 [V28,T10] ( 3, 2.50) long -> r13 "CSE #08: moderate"
-; V29 cse2 [V29,T02] ( 14, 8 ) ref -> r15 "CSE #01: aggressive"
+;* V22 tmp21 [V22 ] ( 0, 0 ) ref -> zero-ref "arr expr"
+;* V23 tmp22 [V23 ] ( 0, 0 ) ref -> zero-ref "argument with side effect"
+; V24 tmp23 [V24,T08] ( 3, 3 ) ref -> rax single-def "arr expr"
+; V25 tmp24 [V25,T11] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
+; V26 tmp25 [V26,T19] ( 2, 0 ) ref -> rdi single-def "argument with side effect"
+; V27 cse0 [V27,T15] ( 3, 1.50) long -> [rbp-0x30] "CSE #04: moderate"
+; V28 cse1 [V28,T09] ( 3, 2.50) long -> r13 "CSE #06: moderate"
+; V29 cse2 [V29,T05] ( 11, 6.50) ref -> r15 "CSE #01: aggressive"
;
; Lcl frame size = 8
G_M50242_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
push rax
lea rbp, [rsp+0x30]
mov rbx, rdi
;; size=19 bbWeight=1 PerfScore 7.75
G_M50242_IG02:
test rbx, rbx
- je G_M50242_IG25
+ je G_M50242_IG19
mov rdi, rbx
mov r15, 0xD1FFAB1E ; 'System.Numerics.Vector`1[System.Single]'
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.JsonSerializerOptions:GetConverterFromList(System.Type):System.Text.Json.Serialization.JsonConverter:this
call [rax]System.Text.Json.JsonSerializerOptions:GetConverterFromList(System.Type):System.Text.Json.Serialization.JsonConverter:this
mov r14, rax
test r14, r14
jne SHORT G_M50242_IG04
;; size=45 bbWeight=1 PerfScore 6.75
G_M50242_IG03:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver:GetBuiltInConverter(System.Type):System.Text.Json.Serialization.JsonConverter
call [rax]System.Text.Json.Serialization.Metadata.DefaultJsonTypeInfoResolver:GetBuiltInConverter(System.Type):System.Text.Json.Serialization.JsonConverter
mov r14, rax
;; size=18 bbWeight=0.50 PerfScore 1.88
G_M50242_IG04:
mov rsi, r14
mov rdi, 0xD1FFAB1E ; System.Text.Json.Serialization.JsonConverterFactory
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
mov r13, rax
test r13, r13
je SHORT G_M50242_IG06
;; size=33 bbWeight=1 PerfScore 5.25
G_M50242_IG05:
mov rdi, r13
mov rdx, rbx
mov rsi, r15
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x60]
call [rax]System.Text.Json.Serialization.JsonConverterFactory:CreateConverter(System.Type,System.Text.Json.JsonSerializerOptions):System.Text.Json.Serialization.JsonConverter:this
mov r14, rax
test r14, r14
- je G_M50242_IG21
+ je G_M50242_IG15
mov rsi, r14
mov rdi, 0xD1FFAB1E ; System.Text.Json.Serialization.JsonConverterFactory
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- jne G_M50242_IG24
+ jne G_M50242_IG18
;; size=65 bbWeight=0.50 PerfScore 7.12
G_M50242_IG06:
mov rdi, r14
mov rax, qword ptr [r14]
mov r13, qword ptr [rax+0x40]
call [r13+0x20]System.Text.Json.Serialization.JsonConverter:get_Type():System.Type:this
mov r12, rax
- mov rdi, r15
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- call [rax]System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
- cmp rax, rdi
- jne SHORT G_M50242_IG08
- ;; size=47 bbWeight=1 PerfScore 12.50
-G_M50242_IG07:
- mov rdi, r12
- mov rax, 0xD1FFAB1E ; code for System.Type:get_IsInterface():ubyte:this
- cmp dword ptr [rdi], edi
- call [rax]System.Type:get_IsInterface():ubyte:this
- test eax, eax
- jne SHORT G_M50242_IG09
- ;; size=21 bbWeight=0.50 PerfScore 3.88
-G_M50242_IG08:
mov rdi, r12
mov rsi, r15
mov rax, qword ptr [r12]
mov rax, qword ptr [rax+0xB0]
call [rax+0x20]System.Type:IsAssignableFrom(System.Type):ubyte:this
- jmp SHORT G_M50242_IG10
- ;; size=22 bbWeight=0.50 PerfScore 4.75
-G_M50242_IG09:
- mov rdi, r15
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericArguments():System.Type[]:this
- call [rax]System.RuntimeType:GetGenericArguments():System.Type[]:this
- cmp dword ptr [rax+0x08], 0
- jbe G_M50242_IG26
- mov rsi, gword ptr [rax+0x10]
- mov rdi, r12
- mov rax, qword ptr [r12]
- mov rax, qword ptr [rax+0xB0]
- call [rax+0x20]System.Type:IsAssignableFrom(System.Type):ubyte:this
- ;; size=46 bbWeight=0.50 PerfScore 8.38
-G_M50242_IG10:
test eax, eax
- jne G_M50242_IG15
- ;; size=8 bbWeight=1 PerfScore 1.25
-G_M50242_IG11:
+ jne G_M50242_IG11
+ ;; size=45 bbWeight=1 PerfScore 16.25
+G_M50242_IG07:
mov rdi, r12
mov rax, qword ptr [r12]
mov rax, qword ptr [rax+0x60]
call [rax+0x08]System.Type:get_IsGenericType():ubyte:this
test eax, eax
- je SHORT G_M50242_IG12
+ je SHORT G_M50242_IG08
mov rdi, r12
mov rax, qword ptr [r12]
mov rax, qword ptr [rax+0x68]
mov qword ptr [rbp-0x30], rax
call [rax+0x18]System.Type:GetGenericTypeDefinition():System.Type:this
mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
cmp rax, rdi
- jne SHORT G_M50242_IG12
+ jne SHORT G_M50242_IG08
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsInterface():ubyte:this
call [rax]System.RuntimeType:get_IsInterface():ubyte:this
test eax, eax
- jne SHORT G_M50242_IG13
+ jne SHORT G_M50242_IG09
;; size=70 bbWeight=0.50 PerfScore 11.50
-G_M50242_IG12:
+G_M50242_IG08:
mov rsi, r12
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:IsAssignableFrom(System.Type):ubyte:this
call [rax]System.RuntimeType:IsAssignableFrom(System.Type):ubyte:this
- jmp SHORT G_M50242_IG14
+ jmp SHORT G_M50242_IG10
;; size=20 bbWeight=0.50 PerfScore 2.88
-G_M50242_IG13:
+G_M50242_IG09:
mov rax, qword ptr [rbp-0x30]
mov rdi, r12
call [rax+0x28]System.Type:GetGenericArguments():System.Type[]:this
cmp dword ptr [rax+0x08], 0
- jbe G_M50242_IG26
+ jbe G_M50242_IG20
mov rsi, gword ptr [rax+0x10]
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:IsAssignableFrom(System.Type):ubyte:this
call [rax]System.RuntimeType:IsAssignableFrom(System.Type):ubyte:this
;; size=39 bbWeight=0.50 PerfScore 6.88
-G_M50242_IG14:
+G_M50242_IG10:
test eax, eax
- je G_M50242_IG23
+ je G_M50242_IG17
;; size=8 bbWeight=0.50 PerfScore 0.62
-G_M50242_IG15:
+G_M50242_IG11:
cmp byte ptr [r14+0x17], 0
- je SHORT G_M50242_IG19
+ je SHORT G_M50242_IG13
;; size=7 bbWeight=1 PerfScore 4.00
-G_M50242_IG16:
- mov rdi, r15
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- call [rax]System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
- cmp rax, rdi
- sete r12b
- movzx r12, r12b
+G_M50242_IG12:
mov rdi, r14
call [r13+0x20]System.Text.Json.Serialization.JsonConverter:get_Type():System.Type:this
mov r13, rax
mov rdi, r13
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x60]
call [rax+0x08]System.Type:get_IsGenericType():ubyte:this
test eax, eax
- jne SHORT G_M50242_IG17
- xor eax, eax
- jmp SHORT G_M50242_IG18
- ;; size=68 bbWeight=0.50 PerfScore 9.75
-G_M50242_IG17:
+ je SHORT G_M50242_IG13
mov rdi, r13
mov rax, qword ptr [r13]
mov rax, qword ptr [rax+0x68]
call [rax+0x18]System.Type:GetGenericTypeDefinition():System.Type:this
mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
cmp rax, rdi
- sete al
- movzx rax, al
- ;; size=33 bbWeight=0.50 PerfScore 4.50
-G_M50242_IG18:
- xor eax, r12d
- jne SHORT G_M50242_IG22
- ;; size=5 bbWeight=0.50 PerfScore 0.62
-G_M50242_IG19:
+ je SHORT G_M50242_IG16
+ ;; size=57 bbWeight=0.50 PerfScore 10.38
+G_M50242_IG13:
mov rdi, 0xD1FFAB1E ; System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Numerics.Vector`1[float]]
call CORINFO_HELP_NEWSFAST
mov r13, rax
mov rdi, r13
mov rcx, rbx
mov rdx, r14
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Metadata.JsonTypeInfo:.ctor(System.Type,System.Text.Json.Serialization.JsonConverter,System.Text.Json.JsonSerializerOptions):this
call [rax]System.Text.Json.Serialization.Metadata.JsonTypeInfo:.ctor(System.Type,System.Text.Json.Serialization.JsonConverter,System.Text.Json.JsonSerializerOptions):this
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Numerics.Vector`1[float]]():System.Text.Json.Serialization.JsonConverter`1[System.Numerics.Vector`1[float]]:this
call [rax]System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Numerics.Vector`1[float]]():System.Text.Json.Serialization.JsonConverter`1[System.Numerics.Vector`1[float]]:this
lea rdi, bword ptr [r13+0x140]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rax, r13
;; size=75 bbWeight=1 PerfScore 11.25
-G_M50242_IG20:
+G_M50242_IG14:
add rsp, 8
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=15 bbWeight=1 PerfScore 4.25
-G_M50242_IG21:
+G_M50242_IG15:
mov rdi, r13
call System.Object:GetType():System.Type:this
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializerConverterFactoryReturnsNull(System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializerConverterFactoryReturnsNull(System.Type)
int3
;; size=24 bbWeight=0 PerfScore 0.00
-G_M50242_IG22:
+G_M50242_IG16:
mov rsi, r14
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConverterCanConvertMultipleTypes(System.Type,System.Text.Json.Serialization.JsonConverter)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConverterCanConvertMultipleTypes(System.Type,System.Text.Json.Serialization.JsonConverter)
int3
;; size=19 bbWeight=0 PerfScore 0.00
-G_M50242_IG23:
+G_M50242_IG17:
mov rdi, r14
call System.Object:GetType():System.Type:this
mov rdi, rax
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializationConverterNotCompatible(System.Type,System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializationConverterNotCompatible(System.Type,System.Type)
int3
;; size=27 bbWeight=0 PerfScore 0.00
-G_M50242_IG24:
+G_M50242_IG18:
mov rdi, r13
call System.Object:GetType():System.Type:this
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializerConverterFactoryReturnsJsonConverterFactorty(System.Type)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_SerializerConverterFactoryReturnsJsonConverterFactorty(System.Type)
int3
;; size=24 bbWeight=0 PerfScore 0.00
-G_M50242_IG25:
+G_M50242_IG19:
mov edi, 0x3958
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowArgumentNullException(System.String)
call [rax]System.Text.Json.ThrowHelper:ThrowArgumentNullException(System.String)
int3
;; size=36 bbWeight=0 PerfScore 0.00
-G_M50242_IG26:
+G_M50242_IG20:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 800, prolog size 16, PerfScore 115.75, instruction count 202, allocated bytes for code 800 (MethodHash=3ef43bbd) for method System.Text.Json.Serialization.Metadata.JsonTypeInfo:CreateJsonTypeInfo[System.Numerics.Vector`1[float]](System.Text.Json.JsonSerializerOptions):System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Numerics.Vector`1[float]] (FullOpts)
+; Total bytes of code 652, prolog size 16, PerfScore 96.75, instruction count 167, allocated bytes for code 652 (MethodHash=3ef43bbd) for method System.Text.Json.Serialization.Metadata.JsonTypeInfo:CreateJsonTypeInfo[System.Numerics.Vector`1[float]](System.Text.Json.JsonSerializerOptions):System.Text.Json.Serialization.Metadata.JsonTypeInfo`1[System.Numerics.Vector`1[float]] (FullOpts)
-79 (-30.38 % of base) - System.Data.DataRowExtensions+UnboxT`1[System.Nullable`1[int]]:g__CreateWhenDynamicCodeSupported|1_0():System.Func`2[System.Object,System.Nullable`1[int]]
; Assembly listing for method System.Data.DataRowExtensions+UnboxT`1[System.Nullable`1[int]]:<Create>g__CreateWhenDynamicCodeSupported|1_0():System.Func`2[System.Object,System.Nullable`1[int]] (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX512 - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 2 single block inlinees; 3 inlinees without PGO data
; Final local variable assignments
;
; V00 OutArgs [V00 ] ( 1, 1 ) struct (16) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V01 tmp1 [V01,T00] ( 3, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Type[]>
; V02 tmp2 [V02,T01] ( 3, 6 ) ref -> rbx class-hnd single-def "impAppendStmt" <System.Reflection.MethodInfo>
-; V03 tmp3 [V03,T02] ( 3, 4 ) ref -> rsi class-hnd "Strict ordering of exceptions for Array store" <System.Type>
-; V04 tmp4 [V04,T05] ( 3, 3 ) ref -> rax single-def "arr expr"
-; V05 tmp5 [V05,T03] ( 2, 4 ) ref -> rdi single-def "argument with side effect"
-; V06 cse0 [V06,T04] ( 4, 3 ) ref -> r14 "CSE #01: aggressive"
+;* V03 tmp3 [V03,T03] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Strict ordering of exceptions for Array store" <System.Type>
+;* V04 tmp4 [V04 ] ( 0, 0 ) ref -> zero-ref "arr expr"
+; V05 tmp5 [V05,T02] ( 2, 4 ) ref -> rdi single-def "argument with side effect"
;
-; Lcl frame size = 24
+; Lcl frame size = 16
G_M40398_IG01:
push rbp
push r15
- push r14
push rbx
- sub rsp, 24
- lea rbp, [rsp+0x30]
- ;; size=15 bbWeight=1 PerfScore 4.75
+ sub rsp, 16
+ lea rbp, [rsp+0x20]
+ ;; size=13 bbWeight=1 PerfScore 3.75
G_M40398_IG02:
xor rdi, rdi
mov gword ptr [rsp], rdi
;; size=6 bbWeight=1 PerfScore 1.25
G_M40398_IG03:
mov gword ptr [rsp+0x08], rdi
mov rdi, 0xD1FFAB1E ; 'UnboxT`1[System.Nullable`1[System.Int32]]'
mov rsi, 0xD1FFAB1E ; 'NullableField'
mov edx, -1
mov ecx, 40
xor r8, r8
mov r9d, 3
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetMethodImplCommon(System.String,int,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.RuntimeType:GetMethodImplCommon(System.String,int,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov rbx, rax
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 1
call CORINFO_HELP_NEWARR_1_OBJ
mov r15, rax
- mov r14, 0xD1FFAB1E ; 'System.Nullable`1[System.Int32]'
- mov rdi, r14
+ mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[System.Int32]'
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsGenericTypeDefinition():ubyte:this
call [rax]System.RuntimeType:get_IsGenericTypeDefinition():ubyte:this
- test eax, eax
- jne SHORT G_M40398_IG05
- ;; size=111 bbWeight=1 PerfScore 12.75
-G_M40398_IG04:
- mov rdi, r14
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- call [rax]System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
- cmp rax, rdi
- je SHORT G_M40398_IG06
- ;; size=30 bbWeight=0.50 PerfScore 2.50
-G_M40398_IG05:
- xor rsi, rsi
- jmp SHORT G_M40398_IG07
- ;; size=4 bbWeight=0.50 PerfScore 1.12
-G_M40398_IG06:
- mov rdi, r14
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericArguments():System.Type[]:this
- call [rax]System.RuntimeType:GetGenericArguments():System.Type[]:this
- cmp dword ptr [rax+0x08], 0
- jbe SHORT G_M40398_IG09
- mov rsi, gword ptr [rax+0x10]
- ;; size=25 bbWeight=0.50 PerfScore 4.75
-G_M40398_IG07:
- lea rdi, bword ptr [r15+0x10]
- call CORINFO_HELP_ASSIGN_REF
+ xor rdi, rdi
+ mov gword ptr [r15+0x10], rdi
mov rdi, rbx
mov rsi, r15
mov rax, qword ptr [rbx]
mov rax, qword ptr [rax+0x60]
call [rax+0x38]System.Reflection.MethodInfo:MakeGenericMethod(System.Type[]):System.Reflection.MethodInfo:this
mov rdi, rax
mov rsi, 0xD1FFAB1E ; System.Reflection.MethodInfo:CreateDelegate[System.Func`2[System.Object,System.Nullable`1[int]]]():System.Func`2[System.Object,System.Nullable`1[int]]:this
mov rax, 0xD1FFAB1E ; code for System.Reflection.MethodInfo:CreateDelegate[System.__Canon]():System.__Canon:this
cmp dword ptr [rdi], edi
- ;; size=50 bbWeight=1 PerfScore 12.75
-G_M40398_IG08:
- add rsp, 24
+ ;; size=151 bbWeight=1 PerfScore 23.75
+G_M40398_IG04:
+ add rsp, 16
pop rbx
- pop r14
pop r15
pop rbp
tail.jmp [rax]System.Reflection.MethodInfo:CreateDelegate[System.__Canon]():System.__Canon:this
- ;; size=13 bbWeight=1 PerfScore 4.25
-G_M40398_IG09:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
+ ;; size=11 bbWeight=1 PerfScore 3.75
-; Total bytes of code 260, prolog size 15, PerfScore 44.12, instruction count 61, allocated bytes for code 260 (MethodHash=9e046231) for method System.Data.DataRowExtensions+UnboxT`1[System.Nullable`1[int]]:<Create>g__CreateWhenDynamicCodeSupported|1_0():System.Func`2[System.Object,System.Nullable`1[int]] (FullOpts)
+; Total bytes of code 181, prolog size 13, PerfScore 32.50, instruction count 40, allocated bytes for code 181 (MethodHash=9e046231) for method System.Data.DataRowExtensions+UnboxT`1[System.Nullable`1[int]]:<Create>g__CreateWhenDynamicCodeSupported|1_0():System.Func`2[System.Object,System.Nullable`1[int]] (FullOpts)
-79 (-30.38 % of base) - System.Data.DataRowExtensions+UnboxT`1[System.Numerics.Vector`1[float]]:g__CreateWhenDynamicCodeSupported|1_0():System.Func`2[System.Object,System.Numerics.Vector`1[float]]
; Assembly listing for method System.Data.DataRowExtensions+UnboxT`1[System.Numerics.Vector`1[float]]:<Create>g__CreateWhenDynamicCodeSupported|1_0():System.Func`2[System.Object,System.Numerics.Vector`1[float]] (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX512 - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 2 single block inlinees; 3 inlinees without PGO data
; Final local variable assignments
;
; V00 OutArgs [V00 ] ( 1, 1 ) struct (16) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V01 tmp1 [V01,T00] ( 3, 6 ) ref -> r15 class-hnd exact single-def "dup spill" <System.Type[]>
; V02 tmp2 [V02,T01] ( 3, 6 ) ref -> rbx class-hnd single-def "impAppendStmt" <System.Reflection.MethodInfo>
-; V03 tmp3 [V03,T02] ( 3, 4 ) ref -> rsi class-hnd "Strict ordering of exceptions for Array store" <System.Type>
-; V04 tmp4 [V04,T05] ( 3, 3 ) ref -> rax single-def "arr expr"
-; V05 tmp5 [V05,T03] ( 2, 4 ) ref -> rdi single-def "argument with side effect"
-; V06 cse0 [V06,T04] ( 4, 3 ) ref -> r14 "CSE #01: aggressive"
+;* V03 tmp3 [V03,T03] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Strict ordering of exceptions for Array store" <System.Type>
+;* V04 tmp4 [V04 ] ( 0, 0 ) ref -> zero-ref "arr expr"
+; V05 tmp5 [V05,T02] ( 2, 4 ) ref -> rdi single-def "argument with side effect"
;
-; Lcl frame size = 24
+; Lcl frame size = 16
G_M14670_IG01:
push rbp
push r15
- push r14
push rbx
- sub rsp, 24
- lea rbp, [rsp+0x30]
- ;; size=15 bbWeight=1 PerfScore 4.75
+ sub rsp, 16
+ lea rbp, [rsp+0x20]
+ ;; size=13 bbWeight=1 PerfScore 3.75
G_M14670_IG02:
xor rdi, rdi
mov gword ptr [rsp], rdi
;; size=6 bbWeight=1 PerfScore 1.25
G_M14670_IG03:
mov gword ptr [rsp+0x08], rdi
mov rdi, 0xD1FFAB1E ; 'UnboxT`1[System.Numerics.Vector`1[System.Single]]'
mov rsi, 0xD1FFAB1E ; 'NullableField'
mov edx, -1
mov ecx, 40
xor r8, r8
mov r9d, 3
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetMethodImplCommon(System.String,int,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.RuntimeType:GetMethodImplCommon(System.String,int,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov rbx, rax
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 1
call CORINFO_HELP_NEWARR_1_OBJ
mov r15, rax
- mov r14, 0xD1FFAB1E ; 'System.Numerics.Vector`1[System.Single]'
- mov rdi, r14
+ mov rdi, 0xD1FFAB1E ; 'System.Numerics.Vector`1[System.Single]'
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsGenericTypeDefinition():ubyte:this
call [rax]System.RuntimeType:get_IsGenericTypeDefinition():ubyte:this
- test eax, eax
- jne SHORT G_M14670_IG05
- ;; size=111 bbWeight=1 PerfScore 12.75
-G_M14670_IG04:
- mov rdi, r14
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- call [rax]System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
- cmp rax, rdi
- je SHORT G_M14670_IG06
- ;; size=30 bbWeight=0.50 PerfScore 2.50
-G_M14670_IG05:
- xor rsi, rsi
- jmp SHORT G_M14670_IG07
- ;; size=4 bbWeight=0.50 PerfScore 1.12
-G_M14670_IG06:
- mov rdi, r14
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericArguments():System.Type[]:this
- call [rax]System.RuntimeType:GetGenericArguments():System.Type[]:this
- cmp dword ptr [rax+0x08], 0
- jbe SHORT G_M14670_IG09
- mov rsi, gword ptr [rax+0x10]
- ;; size=25 bbWeight=0.50 PerfScore 4.75
-G_M14670_IG07:
- lea rdi, bword ptr [r15+0x10]
- call CORINFO_HELP_ASSIGN_REF
+ xor rdi, rdi
+ mov gword ptr [r15+0x10], rdi
mov rdi, rbx
mov rsi, r15
mov rax, qword ptr [rbx]
mov rax, qword ptr [rax+0x60]
call [rax+0x38]System.Reflection.MethodInfo:MakeGenericMethod(System.Type[]):System.Reflection.MethodInfo:this
mov rdi, rax
mov rsi, 0xD1FFAB1E ; System.Reflection.MethodInfo:CreateDelegate[System.Func`2[System.Object,System.Numerics.Vector`1[float]]]():System.Func`2[System.Object,System.Numerics.Vector`1[float]]:this
mov rax, 0xD1FFAB1E ; code for System.Reflection.MethodInfo:CreateDelegate[System.__Canon]():System.__Canon:this
cmp dword ptr [rdi], edi
- ;; size=50 bbWeight=1 PerfScore 12.75
-G_M14670_IG08:
- add rsp, 24
+ ;; size=151 bbWeight=1 PerfScore 23.75
+G_M14670_IG04:
+ add rsp, 16
pop rbx
- pop r14
pop r15
pop rbp
tail.jmp [rax]System.Reflection.MethodInfo:CreateDelegate[System.__Canon]():System.__Canon:this
- ;; size=13 bbWeight=1 PerfScore 4.25
-G_M14670_IG09:
- call CORINFO_HELP_RNGCHKFAIL
- int3
- ;; size=6 bbWeight=0 PerfScore 0.00
+ ;; size=11 bbWeight=1 PerfScore 3.75
-; Total bytes of code 260, prolog size 15, PerfScore 44.12, instruction count 61, allocated bytes for code 260 (MethodHash=fe9dc6b1) for method System.Data.DataRowExtensions+UnboxT`1[System.Numerics.Vector`1[float]]:<Create>g__CreateWhenDynamicCodeSupported|1_0():System.Func`2[System.Object,System.Numerics.Vector`1[float]] (FullOpts)
+; Total bytes of code 181, prolog size 13, PerfScore 32.50, instruction count 40, allocated bytes for code 181 (MethodHash=fe9dc6b1) for method System.Data.DataRowExtensions+UnboxT`1[System.Numerics.Vector`1[float]]:<Create>g__CreateWhenDynamicCodeSupported|1_0():System.Func`2[System.Object,System.Numerics.Vector`1[float]] (FullOpts)
-75 (-12.71 % of base) - System.Data.DataRowExtensions+UnboxT`1[System.Numerics.Vector`1[float]]:NullableFieldUsingReflection(System.Object):System.Numerics.Vector`1[float]
; Assembly listing for method System.Data.DataRowExtensions+UnboxT`1[System.Numerics.Vector`1[float]]:NullableFieldUsingReflection(System.Object):System.Numerics.Vector`1[float] (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX512 - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 4 single block inlinees; 5 inlinees without PGO data
; Final local variable assignments
;
; V00 RetBuf [V00,T01] ( 8, 5 ) byref -> r15 single-def
; V01 arg0 [V01,T00] ( 13, 7.50) ref -> rbx class-hnd <System.Object>
;* V02 loc0 [V02 ] ( 0, 0 ) simd32 -> zero-ref <System.Numerics.Vector`1[float]>
-; V03 loc1 [V03,T03] ( 6, 3 ) ref -> r14 class-hnd exact single-def <System.RuntimeType>
+; V03 loc1 [V03,T02] ( 6, 3 ) ref -> r14 class-hnd exact single-def <System.RuntimeType>
;* V04 loc2 [V04 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Type>
;* V05 loc3 [V05 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Type>
;* V06 loc4 [V06 ] ( 0, 0 ) simd32 -> zero-ref ld-addr-op <System.Numerics.Vector`1[float]>
;# V07 OutArgs [V07 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;* V08 tmp1 [V08,T10] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Numerics.Vector`1[float]>
-; V09 tmp2 [V09,T11] ( 3, 1.50) ref -> r13
+;* V08 tmp1 [V08,T07] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Numerics.Vector`1[float]>
+; V09 tmp2 [V09,T08] ( 3, 1.50) ref -> r13
;* V10 tmp3 [V10 ] ( 0, 0 ) ref -> zero-ref single-def
;* V11 tmp4 [V11 ] ( 0, 0 ) ref -> zero-ref
-; V12 tmp5 [V12,T12] ( 3, 1.50) ref -> rax
-; V13 tmp6 [V13,T13] ( 3, 1.50) ref -> rax
-; V14 tmp7 [V14,T02] ( 10, 5 ) ref -> r12 class-hnd "Inline return value spill temp" <System.Type>
+;* V12 tmp5 [V12,T12] ( 0, 0 ) ref -> zero-ref
+; V13 tmp6 [V13,T09] ( 3, 1.50) ref -> rax
+;* V14 tmp7 [V14,T13] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline return value spill temp" <System.Type>
;* V15 tmp8 [V15 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.RuntimeType[]>
-; V16 tmp9 [V16,T08] ( 2, 2 ) ref -> r13 class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
-; V17 tmp10 [V17,T04] ( 3, 3 ) ref -> rax single-def "arr expr"
-; V18 tmp11 [V18,T05] ( 3, 3 ) ref -> r13 single-def "arr expr"
-; V19 tmp12 [V19,T06] ( 3, 3 ) int -> rax "index expr"
-; V20 cse0 [V20,T14] ( 3, 1.50) long -> r14 "CSE #05: moderate"
-; V21 cse1 [V21,T07] ( 4, 2 ) ref -> r13 "CSE #03: moderate"
-; V22 cse2 [V22,T09] ( 5, 1.75) long -> rdi multi-def "CSE #02: moderate"
-; V23 cse3 [V23,T15] ( 2, 0.50) long -> rax "CSE #01: conservative"
+; V16 tmp9 [V16,T05] ( 2, 2 ) ref -> r13 class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
+;* V17 tmp10 [V17 ] ( 0, 0 ) ref -> zero-ref "arr expr"
+; V18 tmp11 [V18,T03] ( 3, 3 ) ref -> r13 single-def "arr expr"
+; V19 tmp12 [V19,T04] ( 3, 3 ) int -> rax "index expr"
+; V20 cse0 [V20,T10] ( 3, 1.50) long -> r14 "CSE #04: moderate"
+; V21 cse1 [V21,T06] ( 5, 1.75) long -> rdi multi-def "CSE #02: moderate"
+; V22 cse2 [V22,T11] ( 2, 0.50) long -> rax "CSE #01: conservative"
;
-; Lcl frame size = 8
+; Lcl frame size = 0
G_M40660_IG01:
push rbp
push r15
push r14
push r13
- push r12
push rbx
- push rax
- lea rbp, [rsp+0x30]
+ lea rbp, [rsp+0x20]
mov r15, rdi
mov rbx, rsi
- ;; size=22 bbWeight=1 PerfScore 8.00
+ ;; size=19 bbWeight=1 PerfScore 6.00
G_M40660_IG02:
mov rax, 0xD1FFAB1E ; global ptr
test byte ptr [rax], 1
- je G_M40660_IG25
+ je G_M40660_IG20
;; size=19 bbWeight=1 PerfScore 4.25
G_M40660_IG03:
mov rax, 0xD1FFAB1E ; data for System.DBNull:Value
cmp rbx, gword ptr [rax]
- je G_M40660_IG23
+ je G_M40660_IG18
;; size=19 bbWeight=1 PerfScore 4.25
G_M40660_IG04:
test rbx, rbx
je SHORT G_M40660_IG08
;; size=5 bbWeight=0.50 PerfScore 0.62
G_M40660_IG05:
mov rax, qword ptr [rbx]
mov rdi, 0xD1FFAB1E ; System.Numerics.Vector`1[float]
cmp rax, rdi
jne SHORT G_M40660_IG08
;; size=18 bbWeight=0.25 PerfScore 0.88
G_M40660_IG06:
vmovups ymm0, ymmword ptr [rbx+0x08]
vmovups ymmword ptr [r15], ymm0
mov rax, r15
;; size=13 bbWeight=0.50 PerfScore 3.62
G_M40660_IG07:
vzeroupper
- add rsp, 8
pop rbx
- pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=18 bbWeight=0.50 PerfScore 2.62
+ ;; size=12 bbWeight=0.50 PerfScore 2.25
G_M40660_IG08:
mov rdi, rbx
call System.Object:GetType():System.Type:this
mov r14, rax
- mov r13, 0xD1FFAB1E ; 'System.Numerics.Vector`1[System.Single]'
- mov rdi, r13
+ mov rdi, 0xD1FFAB1E ; 'System.Numerics.Vector`1[System.Single]'
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsGenericTypeDefinition():ubyte:this
call [rax]System.RuntimeType:get_IsGenericTypeDefinition():ubyte:this
- test eax, eax
- jne SHORT G_M40660_IG09
- mov rdi, r13
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- call [rax]System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
- cmp rax, rdi
- je SHORT G_M40660_IG10
- ;; size=70 bbWeight=0.50 PerfScore 5.75
-G_M40660_IG09:
- xor r12, r12
- jmp SHORT G_M40660_IG11
- ;; size=5 bbWeight=0.50 PerfScore 1.12
-G_M40660_IG10:
- mov rdi, r13
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericArguments():System.Type[]:this
- call [rax]System.RuntimeType:GetGenericArguments():System.Type[]:this
- cmp dword ptr [rax+0x08], 0
- jbe G_M40660_IG28
- mov r12, gword ptr [rax+0x10]
- ;; size=29 bbWeight=0.50 PerfScore 4.75
-G_M40660_IG11:
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsEnum():ubyte:this
call [rax]System.RuntimeType:get_IsEnum():ubyte:this
test eax, eax
- je SHORT G_M40660_IG13
+ je SHORT G_M40660_IG10
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsActualEnum():ubyte:this
call [rax]System.RuntimeType:get_IsActualEnum():ubyte:this
test eax, eax
- je G_M40660_IG27
+ je G_M40660_IG22
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M40660_IG26
- ;; size=61 bbWeight=0.50 PerfScore 6.88
-G_M40660_IG12:
+ je G_M40660_IG21
+ ;; size=94 bbWeight=0.50 PerfScore 9.38
+G_M40660_IG09:
mov rdi, 0xD1FFAB1E ; data for System.Enum:s_underlyingTypes
mov r13, gword ptr [rdi]
mov rdi, qword ptr [r14+0x18]
call System.Enum:InternalGetCorElementType(ulong):ubyte
cmp eax, dword ptr [r13+0x08]
- jae G_M40660_IG28
+ jae G_M40660_IG24
mov edi, eax
mov r13, gword ptr [r13+8*rdi+0x10]
- jmp SHORT G_M40660_IG14
+ jmp SHORT G_M40660_IG11
;; size=41 bbWeight=0.50 PerfScore 6.75
-G_M40660_IG13:
+G_M40660_IG10:
mov r13, r14
;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M40660_IG14:
- mov rdi, r12
- mov rax, qword ptr [r12]
+G_M40660_IG11:
+ xor rdi, rdi
+ mov rax, qword ptr [0x0000]
mov r14, qword ptr [rax+0x70]
call [r14+0x30]System.Type:get_IsEnum():ubyte:this
test eax, eax
- je SHORT G_M40660_IG15
- mov rdi, r12
- mov rax, qword ptr [r12]
- mov rax, qword ptr [rax+0xA0]
- call [rax+0x18]System.Type:GetEnumUnderlyingType():System.Type:this
- jmp SHORT G_M40660_IG16
- ;; size=38 bbWeight=0.50 PerfScore 8.88
-G_M40660_IG15:
- mov rax, r12
- ;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M40660_IG16:
+ jne G_M40660_IG23
mov rdi, r13
- mov rsi, rax
+ xor rsi, rsi
mov rax, 0xD1FFAB1E ; code for System.Type:op_Equality(System.Type,System.Type):ubyte
call [rax]System.Type:op_Equality(System.Type,System.Type):ubyte
test eax, eax
- je SHORT G_M40660_IG19
- mov rdi, r12
+ je SHORT G_M40660_IG14
+ xor rdi, rdi
call [r14+0x30]System.Type:get_IsEnum():ubyte:this
test eax, eax
- je SHORT G_M40660_IG17
- mov rdi, r12
+ je SHORT G_M40660_IG12
+ xor rdi, rdi
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Enum:ToObject(System.Type,System.Object):System.Object
call [rax]System.Enum:ToObject(System.Type,System.Object):System.Object
- jmp SHORT G_M40660_IG18
- ;; size=53 bbWeight=0.50 PerfScore 7.62
-G_M40660_IG17:
+ jmp SHORT G_M40660_IG13
+ ;; size=76 bbWeight=0.50 PerfScore 11.88
+G_M40660_IG12:
mov rdi, rbx
- mov rsi, r12
+ xor rsi, rsi
xor rdx, rdx
mov rax, 0xD1FFAB1E ; code for System.Convert:ChangeType(System.Object,System.Type,System.IFormatProvider):System.Object
call [rax]System.Convert:ChangeType(System.Object,System.Type,System.IFormatProvider):System.Object
- ;; size=20 bbWeight=0.50 PerfScore 2.00
-G_M40660_IG18:
+ ;; size=19 bbWeight=0.50 PerfScore 2.00
+G_M40660_IG13:
mov rbx, rax
;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M40660_IG19:
+G_M40660_IG14:
mov rdi, 0xD1FFAB1E ; System.Numerics.Vector`1[float]
cmp qword ptr [rbx], rdi
- je SHORT G_M40660_IG21
+ je SHORT G_M40660_IG16
;; size=15 bbWeight=0.50 PerfScore 2.12
-G_M40660_IG20:
+G_M40660_IG15:
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_UNBOX
call [rax]CORINFO_HELP_UNBOX
;; size=15 bbWeight=0.25 PerfScore 0.88
-G_M40660_IG21:
+G_M40660_IG16:
vmovups ymm0, ymmword ptr [rbx+0x08]
vmovups ymmword ptr [r15], ymm0
mov rax, r15
;; size=13 bbWeight=0.50 PerfScore 3.62
-G_M40660_IG22:
+G_M40660_IG17:
vzeroupper
- add rsp, 8
pop rbx
- pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=18 bbWeight=0.50 PerfScore 2.62
-G_M40660_IG23:
+ ;; size=12 bbWeight=0.50 PerfScore 2.25
+G_M40660_IG18:
vxorps ymm0, ymm0, ymm0
vmovups ymmword ptr [r15], ymm0
mov rax, r15
;; size=12 bbWeight=0.50 PerfScore 1.29
-G_M40660_IG24:
+G_M40660_IG19:
vzeroupper
- add rsp, 8
pop rbx
- pop r12
pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=18 bbWeight=0.50 PerfScore 2.62
-G_M40660_IG25:
+ ;; size=12 bbWeight=0.50 PerfScore 2.25
+G_M40660_IG20:
mov rdi, 0xD1FFAB1E ; System.DBNull
call CORINFO_HELP_GET_GCSTATIC_BASE
jmp G_M40660_IG03
;; size=20 bbWeight=0 PerfScore 0.00
-G_M40660_IG26:
+G_M40660_IG21:
mov rdi, 0xD1FFAB1E ; System.Enum
call CORINFO_HELP_GET_GCSTATIC_BASE
- jmp G_M40660_IG12
+ jmp G_M40660_IG09
;; size=20 bbWeight=0 PerfScore 0.00
-G_M40660_IG27:
+G_M40660_IG22:
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:ThrowMustBeEnum()
call [rax]System.RuntimeType:ThrowMustBeEnum()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M40660_IG28:
+G_M40660_IG23:
+ mov edi, 0x4C5
+ mov rsi, 0xD1FFAB1E
+ call CORINFO_HELP_STRCNS
+ mov rdi, rax
+ mov rax, 0xD1FFAB1E ; code for System.ArgumentNullException:Throw(System.String)
+ call [rax]System.ArgumentNullException:Throw(System.String)
+ int3
+ ;; size=36 bbWeight=0 PerfScore 0.00
+G_M40660_IG24:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 590, prolog size 16, PerfScore 81.54, instruction count 154, allocated bytes for code 590 (MethodHash=3a1e612b) for method System.Data.DataRowExtensions+UnboxT`1[System.Numerics.Vector`1[float]]:NullableFieldUsingReflection(System.Object):System.Numerics.Vector`1[float] (FullOpts)
+; Total bytes of code 515, prolog size 13, PerfScore 64.54, instruction count 130, allocated bytes for code 515 (MethodHash=3a1e612b) for method System.Data.DataRowExtensions+UnboxT`1[System.Numerics.Vector`1[float]]:NullableFieldUsingReflection(System.Object):System.Numerics.Vector`1[float] (FullOpts)
-71 (-23.59 % of base) - System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Nullable`1[int]]():System.Text.Json.Serialization.JsonConverter`1[System.Nullable`1[int]]:this
; Assembly listing for method System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Nullable`1[int]]():System.Text.Json.Serialization.JsonConverter`1[System.Nullable`1[int]]:this (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX512 - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 1 single block inlinees; 3 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 10, 6 ) ref -> rbx this class-hnd single-def <System.Text.Json.Serialization.JsonConverter>
; V01 loc0 [V01,T04] ( 3, 2.50) ref -> rax class-hnd single-def <System.Text.Json.Serialization.JsonConverter`1[System.Nullable`1[int]]>
;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V03 tmp1 [V03,T02] ( 3, 3 ) ref -> rax class-hnd single-def "dup spill" <System.Text.Json.Serialization.JsonConverter>
;* V04 tmp2 [V04 ] ( 0, 0 ) ref -> zero-ref single-def
-; V05 tmp3 [V05,T07] ( 3, 1.50) ref -> rax
+; V05 tmp3 [V05,T06] ( 3, 1.50) ref -> rax
; V06 tmp4 [V06,T05] ( 4, 2 ) ref -> rax
; V07 tmp5 [V07,T03] ( 3, 3 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Text.Json.Serialization.Converters.CastingConverter`1[System.Nullable`1[int]]>
-; V08 tmp6 [V08,T06] ( 2, 2 ) int -> r15 "non-inline candidate call"
-; V09 tmp7 [V09,T08] ( 3, 1.50) ubyte -> r13 "Inline return value spill temp"
-; V10 tmp8 [V10,T01] ( 5, 5 ) ref -> r14 class-hnd single-def "Inlining Arg" <System.Type>
+;* V08 tmp6 [V08 ] ( 0, 0 ) int -> zero-ref "non-inline candidate call"
+;* V09 tmp7 [V09,T07] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V10 tmp8 [V10,T01] ( 5, 5 ) ref -> r15 class-hnd single-def "Inlining Arg" <System.Type>
;
; Lcl frame size = 0
G_M61975_IG01:
push rbp
push r15
- push r14
- push r13
push rbx
- lea rbp, [rsp+0x20]
+ lea rbp, [rsp+0x10]
mov rbx, rdi
- ;; size=16 bbWeight=1 PerfScore 5.75
+ ;; size=12 bbWeight=1 PerfScore 3.75
G_M61975_IG02:
mov rsi, rbx
mov rdi, 0xD1FFAB1E ; System.Text.Json.Serialization.JsonConverter`1[System.Nullable`1[int]]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- jne G_M61975_IG10
+ jne G_M61975_IG08
;; size=34 bbWeight=1 PerfScore 5.00
G_M61975_IG03:
cmp byte ptr [rbx+0x17], 0
- je SHORT G_M61975_IG06
- mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[System.Int32]'
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- call [rax]System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
- cmp rax, rdi
- sete r15b
- movzx r15, r15b
+ je SHORT G_M61975_IG04
mov rdi, rbx
mov rax, qword ptr [rbx]
mov rax, qword ptr [rax+0x40]
call [rax+0x20]System.Text.Json.Serialization.JsonConverter:get_Type():System.Type:this
- mov r14, rax
- mov rdi, r14
- mov rax, qword ptr [r14]
+ mov r15, rax
+ mov rdi, r15
+ mov rax, qword ptr [r15]
mov rax, qword ptr [rax+0x60]
call [rax+0x08]System.Type:get_IsGenericType():ubyte:this
test eax, eax
- jne SHORT G_M61975_IG04
- xor r13d, r13d
- jmp SHORT G_M61975_IG05
- ;; size=87 bbWeight=0.50 PerfScore 13.75
-G_M61975_IG04:
- mov rdi, r14
- mov rax, qword ptr [r14]
+ je SHORT G_M61975_IG04
+ mov rdi, r15
+ mov rax, qword ptr [r15]
mov rax, qword ptr [rax+0x68]
call [rax+0x18]System.Type:GetGenericTypeDefinition():System.Type:this
mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
cmp rax, rdi
- sete r13b
- movzx r13, r13b
- ;; size=34 bbWeight=0.50 PerfScore 4.50
-G_M61975_IG05:
- xor r15d, r13d
- jne SHORT G_M61975_IG11
- ;; size=5 bbWeight=0.50 PerfScore 0.62
-G_M61975_IG06:
+ je SHORT G_M61975_IG09
+ ;; size=67 bbWeight=0.50 PerfScore 14.38
+G_M61975_IG04:
mov rdi, rbx
mov rax, qword ptr [rbx]
mov rax, qword ptr [rax+0x48]
call [rax+0x20]System.Text.Json.Serialization.JsonConverter:get_SourceConverterForCastingConverter():System.Text.Json.Serialization.JsonConverter:this
test rax, rax
- je SHORT G_M61975_IG07
+ je SHORT G_M61975_IG05
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Nullable`1[int]]():System.Text.Json.Serialization.JsonConverter`1[System.Nullable`1[int]]:this
call [rax]System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Nullable`1[int]]():System.Text.Json.Serialization.JsonConverter`1[System.Nullable`1[int]]:this
- jmp SHORT G_M61975_IG08
+ jmp SHORT G_M61975_IG06
;; size=35 bbWeight=0.50 PerfScore 7.00
-G_M61975_IG07:
+G_M61975_IG05:
xor rax, rax
;; size=2 bbWeight=0.50 PerfScore 0.12
-G_M61975_IG08:
+G_M61975_IG06:
test rax, rax
- jne SHORT G_M61975_IG09
+ jne SHORT G_M61975_IG07
mov rdi, 0xD1FFAB1E ; System.Text.Json.Serialization.Converters.CastingConverter`1[System.Nullable`1[int]]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Converters.CastingConverter`1[System.Nullable`1[int]]:.ctor(System.Text.Json.Serialization.JsonConverter):this
call [rax]System.Text.Json.Serialization.Converters.CastingConverter`1[System.Nullable`1[int]]:.ctor(System.Text.Json.Serialization.JsonConverter):this
mov rax, r15
;; size=44 bbWeight=0.50 PerfScore 3.38
-G_M61975_IG09:
+G_M61975_IG07:
pop rbx
- pop r13
- pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0.50 PerfScore 1.75
-G_M61975_IG10:
+ ;; size=5 bbWeight=0.50 PerfScore 1.25
+G_M61975_IG08:
pop rbx
- pop r13
- pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0.50 PerfScore 1.75
-G_M61975_IG11:
+ ;; size=5 bbWeight=0.50 PerfScore 1.25
+G_M61975_IG09:
mov rsi, rbx
mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[System.Int32]'
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConverterCanConvertMultipleTypes(System.Type,System.Text.Json.Serialization.JsonConverter)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConverterCanConvertMultipleTypes(System.Type,System.Text.Json.Serialization.JsonConverter)
int3
;; size=26 bbWeight=0 PerfScore 0.00
-; Total bytes of code 301, prolog size 13, PerfScore 43.62, instruction count 83, allocated bytes for code 301 (MethodHash=f7610de8) for method System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Nullable`1[int]]():System.Text.Json.Serialization.JsonConverter`1[System.Nullable`1[int]]:this (FullOpts)
+; Total bytes of code 230, prolog size 9, PerfScore 36.12, instruction count 65, allocated bytes for code 230 (MethodHash=f7610de8) for method System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Nullable`1[int]]():System.Text.Json.Serialization.JsonConverter`1[System.Nullable`1[int]]:this (FullOpts)
-71 (-23.59 % of base) - System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Numerics.Vector`1[float]]():System.Text.Json.Serialization.JsonConverter`1[System.Numerics.Vector`1[float]]:this
; Assembly listing for method System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Numerics.Vector`1[float]]():System.Text.Json.Serialization.JsonConverter`1[System.Numerics.Vector`1[float]]:this (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX512 - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 1 single block inlinees; 3 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 10, 6 ) ref -> rbx this class-hnd single-def <System.Text.Json.Serialization.JsonConverter>
; V01 loc0 [V01,T04] ( 3, 2.50) ref -> rax class-hnd single-def <System.Text.Json.Serialization.JsonConverter`1[System.Numerics.Vector`1[float]]>
;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V03 tmp1 [V03,T02] ( 3, 3 ) ref -> rax class-hnd single-def "dup spill" <System.Text.Json.Serialization.JsonConverter>
;* V04 tmp2 [V04 ] ( 0, 0 ) ref -> zero-ref single-def
-; V05 tmp3 [V05,T07] ( 3, 1.50) ref -> rax
+; V05 tmp3 [V05,T06] ( 3, 1.50) ref -> rax
; V06 tmp4 [V06,T05] ( 4, 2 ) ref -> rax
; V07 tmp5 [V07,T03] ( 3, 3 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.Text.Json.Serialization.Converters.CastingConverter`1[System.Numerics.Vector`1[float]]>
-; V08 tmp6 [V08,T06] ( 2, 2 ) int -> r15 "non-inline candidate call"
-; V09 tmp7 [V09,T08] ( 3, 1.50) ubyte -> r13 "Inline return value spill temp"
-; V10 tmp8 [V10,T01] ( 5, 5 ) ref -> r14 class-hnd single-def "Inlining Arg" <System.Type>
+;* V08 tmp6 [V08 ] ( 0, 0 ) int -> zero-ref "non-inline candidate call"
+;* V09 tmp7 [V09,T07] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V10 tmp8 [V10,T01] ( 5, 5 ) ref -> r15 class-hnd single-def "Inlining Arg" <System.Type>
;
; Lcl frame size = 0
G_M27543_IG01:
push rbp
push r15
- push r14
- push r13
push rbx
- lea rbp, [rsp+0x20]
+ lea rbp, [rsp+0x10]
mov rbx, rdi
- ;; size=16 bbWeight=1 PerfScore 5.75
+ ;; size=12 bbWeight=1 PerfScore 3.75
G_M27543_IG02:
mov rsi, rbx
mov rdi, 0xD1FFAB1E ; System.Text.Json.Serialization.JsonConverter`1[System.Numerics.Vector`1[float]]
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ISINSTANCEOFCLASS
call [rax]CORINFO_HELP_ISINSTANCEOFCLASS
test rax, rax
- jne G_M27543_IG10
+ jne G_M27543_IG08
;; size=34 bbWeight=1 PerfScore 5.00
G_M27543_IG03:
cmp byte ptr [rbx+0x17], 0
- je SHORT G_M27543_IG06
- mov rdi, 0xD1FFAB1E ; 'System.Numerics.Vector`1[System.Single]'
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- call [rax]System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
- cmp rax, rdi
- sete r15b
- movzx r15, r15b
+ je SHORT G_M27543_IG04
mov rdi, rbx
mov rax, qword ptr [rbx]
mov rax, qword ptr [rax+0x40]
call [rax+0x20]System.Text.Json.Serialization.JsonConverter:get_Type():System.Type:this
- mov r14, rax
- mov rdi, r14
- mov rax, qword ptr [r14]
+ mov r15, rax
+ mov rdi, r15
+ mov rax, qword ptr [r15]
mov rax, qword ptr [rax+0x60]
call [rax+0x08]System.Type:get_IsGenericType():ubyte:this
test eax, eax
- jne SHORT G_M27543_IG04
- xor r13d, r13d
- jmp SHORT G_M27543_IG05
- ;; size=87 bbWeight=0.50 PerfScore 13.75
-G_M27543_IG04:
- mov rdi, r14
- mov rax, qword ptr [r14]
+ je SHORT G_M27543_IG04
+ mov rdi, r15
+ mov rax, qword ptr [r15]
mov rax, qword ptr [rax+0x68]
call [rax+0x18]System.Type:GetGenericTypeDefinition():System.Type:this
mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
cmp rax, rdi
- sete r13b
- movzx r13, r13b
- ;; size=34 bbWeight=0.50 PerfScore 4.50
-G_M27543_IG05:
- xor r15d, r13d
- jne SHORT G_M27543_IG11
- ;; size=5 bbWeight=0.50 PerfScore 0.62
-G_M27543_IG06:
+ je SHORT G_M27543_IG09
+ ;; size=67 bbWeight=0.50 PerfScore 14.38
+G_M27543_IG04:
mov rdi, rbx
mov rax, qword ptr [rbx]
mov rax, qword ptr [rax+0x48]
call [rax+0x20]System.Text.Json.Serialization.JsonConverter:get_SourceConverterForCastingConverter():System.Text.Json.Serialization.JsonConverter:this
test rax, rax
- je SHORT G_M27543_IG07
+ je SHORT G_M27543_IG05
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Numerics.Vector`1[float]]():System.Text.Json.Serialization.JsonConverter`1[System.Numerics.Vector`1[float]]:this
call [rax]System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Numerics.Vector`1[float]]():System.Text.Json.Serialization.JsonConverter`1[System.Numerics.Vector`1[float]]:this
- jmp SHORT G_M27543_IG08
+ jmp SHORT G_M27543_IG06
;; size=35 bbWeight=0.50 PerfScore 7.00
-G_M27543_IG07:
+G_M27543_IG05:
xor rax, rax
;; size=2 bbWeight=0.50 PerfScore 0.12
-G_M27543_IG08:
+G_M27543_IG06:
test rax, rax
- jne SHORT G_M27543_IG09
+ jne SHORT G_M27543_IG07
mov rdi, 0xD1FFAB1E ; System.Text.Json.Serialization.Converters.CastingConverter`1[System.Numerics.Vector`1[float]]
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Text.Json.Serialization.Converters.CastingConverter`1[System.Numerics.Vector`1[float]]:.ctor(System.Text.Json.Serialization.JsonConverter):this
call [rax]System.Text.Json.Serialization.Converters.CastingConverter`1[System.Numerics.Vector`1[float]]:.ctor(System.Text.Json.Serialization.JsonConverter):this
mov rax, r15
;; size=44 bbWeight=0.50 PerfScore 3.38
-G_M27543_IG09:
+G_M27543_IG07:
pop rbx
- pop r13
- pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0.50 PerfScore 1.75
-G_M27543_IG10:
+ ;; size=5 bbWeight=0.50 PerfScore 1.25
+G_M27543_IG08:
pop rbx
- pop r13
- pop r14
pop r15
pop rbp
ret
- ;; size=9 bbWeight=0.50 PerfScore 1.75
-G_M27543_IG11:
+ ;; size=5 bbWeight=0.50 PerfScore 1.25
+G_M27543_IG09:
mov rsi, rbx
mov rdi, 0xD1FFAB1E ; 'System.Numerics.Vector`1[System.Single]'
mov rax, 0xD1FFAB1E ; code for System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConverterCanConvertMultipleTypes(System.Type,System.Text.Json.Serialization.JsonConverter)
call [rax]System.Text.Json.ThrowHelper:ThrowInvalidOperationException_ConverterCanConvertMultipleTypes(System.Type,System.Text.Json.Serialization.JsonConverter)
int3
;; size=26 bbWeight=0 PerfScore 0.00
-; Total bytes of code 301, prolog size 13, PerfScore 43.62, instruction count 83, allocated bytes for code 301 (MethodHash=a5569468) for method System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Numerics.Vector`1[float]]():System.Text.Json.Serialization.JsonConverter`1[System.Numerics.Vector`1[float]]:this (FullOpts)
+; Total bytes of code 230, prolog size 9, PerfScore 36.12, instruction count 65, allocated bytes for code 230 (MethodHash=a5569468) for method System.Text.Json.Serialization.JsonConverter:CreateCastingConverter[System.Numerics.Vector`1[float]]():System.Text.Json.Serialization.JsonConverter`1[System.Numerics.Vector`1[float]]:this (FullOpts)
-62 (-11.15 % of base) - System.Data.DataRowExtensions+UnboxT`1[System.Nullable`1[int]]:NullableFieldUsingReflection(System.Object):System.Nullable`1[int]
; Assembly listing for method System.Data.DataRowExtensions+UnboxT`1[System.Nullable`1[int]]:NullableFieldUsingReflection(System.Object):System.Nullable`1[int] (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX512 - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 4 single block inlinees; 5 inlinees without PGO data
; Final local variable assignments
;
; V00 arg0 [V00,T00] ( 11, 6.75) ref -> rbx class-hnd <System.Object>
-; V01 loc0 [V01 ] ( 2, 1 ) struct ( 8) [rbp-0x28] do-not-enreg[XS] addr-exposed <System.Nullable`1[int]>
-; V02 loc1 [V02,T02] ( 6, 3 ) ref -> r15 class-hnd exact single-def <System.RuntimeType>
+; V01 loc0 [V01 ] ( 2, 1 ) struct ( 8) [rbp-0x20] do-not-enreg[XS] addr-exposed <System.Nullable`1[int]>
+; V02 loc1 [V02,T01] ( 6, 3 ) ref -> r15 class-hnd exact single-def <System.RuntimeType>
;* V03 loc2 [V03 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Type>
;* V04 loc3 [V04 ] ( 0, 0 ) ref -> zero-ref class-hnd <System.Type>
;* V05 loc4 [V05 ] ( 0, 0 ) struct ( 8) zero-ref do-not-enreg[S] ld-addr-op <System.Nullable`1[int]>
;# V06 OutArgs [V06 ] ( 1, 1 ) struct ( 0) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-;* V07 tmp1 [V07,T08] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Int32>
-; V08 tmp2 [V08,T09] ( 3, 1.50) ref -> r14
+;* V07 tmp1 [V07,T05] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Int32>
+; V08 tmp2 [V08,T06] ( 3, 1.50) ref -> r14
;* V09 tmp3 [V09 ] ( 0, 0 ) ref -> zero-ref single-def
;* V10 tmp4 [V10 ] ( 0, 0 ) ref -> zero-ref
-; V11 tmp5 [V11,T10] ( 3, 1.50) ref -> rax
-; V12 tmp6 [V12 ] ( 2, 2 ) struct ( 8) [rbp-0x30] do-not-enreg[XS] addr-exposed "pseudo return buffer" <System.Nullable`1[int]>
-; V13 tmp7 [V13,T11] ( 3, 1.50) ref -> rax
-; V14 tmp8 [V14,T01] ( 10, 5 ) ref -> r13 class-hnd "Inline return value spill temp" <System.Type>
+;* V11 tmp5 [V11,T09] ( 0, 0 ) ref -> zero-ref
+; V12 tmp6 [V12 ] ( 2, 2 ) struct ( 8) [rbp-0x28] do-not-enreg[XS] addr-exposed "pseudo return buffer" <System.Nullable`1[int]>
+; V13 tmp7 [V13,T07] ( 3, 1.50) ref -> rax
+;* V14 tmp8 [V14,T10] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inline return value spill temp" <System.Type>
;* V15 tmp9 [V15 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.RuntimeType[]>
-; V16 tmp10 [V16,T07] ( 2, 2 ) ref -> r14 class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
-; V17 tmp11 [V17 ] ( 2, 1 ) ubyte -> [rbp-0x28] do-not-enreg[X] addr-exposed "field V01.hasValue (fldOffset=0x0)" P-DEP
-; V18 tmp12 [V18 ] ( 2, 1 ) int -> [rbp-0x24] do-not-enreg[X] addr-exposed "field V01.value (fldOffset=0x4)" P-DEP
+; V16 tmp10 [V16,T04] ( 2, 2 ) ref -> r14 class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
+; V17 tmp11 [V17 ] ( 2, 1 ) ubyte -> [rbp-0x20] do-not-enreg[X] addr-exposed "field V01.hasValue (fldOffset=0x0)" P-DEP
+; V18 tmp12 [V18 ] ( 2, 1 ) int -> [rbp-0x1C] do-not-enreg[X] addr-exposed "field V01.value (fldOffset=0x4)" P-DEP
;* V19 tmp13 [V19 ] ( 0, 0 ) ubyte -> zero-ref do-not-enreg[] "field V05.hasValue (fldOffset=0x0)" P-DEP
;* V20 tmp14 [V20 ] ( 0, 0 ) int -> zero-ref do-not-enreg[] "field V05.value (fldOffset=0x4)" P-DEP
-; V21 tmp15 [V21 ] ( 2, 2 ) ubyte -> [rbp-0x30] do-not-enreg[X] addr-exposed "field V12.hasValue (fldOffset=0x0)" P-DEP
-; V22 tmp16 [V22 ] ( 2, 2 ) int -> [rbp-0x2C] do-not-enreg[X] addr-exposed "field V12.value (fldOffset=0x4)" P-DEP
-; V23 tmp17 [V23,T03] ( 3, 3 ) ref -> rax single-def "arr expr"
-; V24 tmp18 [V24,T04] ( 3, 3 ) ref -> r14 single-def "arr expr"
-; V25 tmp19 [V25,T05] ( 3, 3 ) int -> rax "index expr"
-; V26 cse0 [V26,T12] ( 3, 1.50) long -> r15 "CSE #03: moderate"
-; V27 cse1 [V27,T06] ( 4, 2 ) ref -> r14 "CSE #01: moderate"
+; V21 tmp15 [V21 ] ( 2, 2 ) ubyte -> [rbp-0x28] do-not-enreg[X] addr-exposed "field V12.hasValue (fldOffset=0x0)" P-DEP
+; V22 tmp16 [V22 ] ( 2, 2 ) int -> [rbp-0x24] do-not-enreg[X] addr-exposed "field V12.value (fldOffset=0x4)" P-DEP
+;* V23 tmp17 [V23 ] ( 0, 0 ) ref -> zero-ref "arr expr"
+; V24 tmp18 [V24,T02] ( 3, 3 ) ref -> r14 single-def "arr expr"
+; V25 tmp19 [V25,T03] ( 3, 3 ) int -> rax "index expr"
+; V26 cse0 [V26,T08] ( 3, 1.50) long -> r15 "CSE #02: moderate"
;
-; Lcl frame size = 16
+; Lcl frame size = 24
G_M38004_IG01:
push rbp
push r15
push r14
- push r13
push rbx
- sub rsp, 16
+ sub rsp, 24
lea rbp, [rsp+0x30]
mov rbx, rdi
- ;; size=20 bbWeight=1 PerfScore 6.00
+ ;; size=18 bbWeight=1 PerfScore 5.00
G_M38004_IG02:
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M38004_IG23
+ je G_M38004_IG18
;; size=19 bbWeight=1 PerfScore 4.25
G_M38004_IG03:
mov rdi, 0xD1FFAB1E ; data for System.DBNull:Value
cmp rbx, gword ptr [rdi]
- je G_M38004_IG21
+ je G_M38004_IG16
;; size=19 bbWeight=1 PerfScore 4.25
G_M38004_IG04:
test rbx, rbx
je SHORT G_M38004_IG08
;; size=5 bbWeight=0.50 PerfScore 0.62
G_M38004_IG05:
mov rdi, 0xD1FFAB1E ; System.Int32
cmp qword ptr [rbx], rdi
jne SHORT G_M38004_IG08
;; size=15 bbWeight=0.25 PerfScore 1.06
G_M38004_IG06:
- lea rdi, [rbp-0x28]
+ lea rdi, [rbp-0x20]
mov rdx, rbx
mov rsi, 0xD1FFAB1E ; System.Nullable`1[int]
call CORINFO_HELP_UNBOX_NULLABLE
- mov rax, qword ptr [rbp-0x28]
+ mov rax, qword ptr [rbp-0x20]
;; size=26 bbWeight=0.50 PerfScore 1.50
G_M38004_IG07:
- add rsp, 16
+ add rsp, 24
pop rbx
- pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=13 bbWeight=0.50 PerfScore 1.88
+ ;; size=11 bbWeight=0.50 PerfScore 1.62
G_M38004_IG08:
mov rdi, rbx
call System.Object:GetType():System.Type:this
mov r15, rax
- mov r14, 0xD1FFAB1E ; 'System.Nullable`1[System.Int32]'
- mov rdi, r14
+ mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[System.Int32]'
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsGenericTypeDefinition():ubyte:this
call [rax]System.RuntimeType:get_IsGenericTypeDefinition():ubyte:this
- test eax, eax
- jne SHORT G_M38004_IG09
- mov rdi, r14
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- call [rax]System.RuntimeType:GetGenericTypeDefinition():System.Type:this
- mov rdi, 0xD1FFAB1E ; 'System.Nullable`1[T]'
- cmp rax, rdi
- je SHORT G_M38004_IG10
- ;; size=70 bbWeight=0.50 PerfScore 5.75
-G_M38004_IG09:
- xor r13, r13
- jmp SHORT G_M38004_IG11
- ;; size=5 bbWeight=0.50 PerfScore 1.12
-G_M38004_IG10:
- mov rdi, r14
- mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetGenericArguments():System.Type[]:this
- call [rax]System.RuntimeType:GetGenericArguments():System.Type[]:this
- cmp dword ptr [rax+0x08], 0
- jbe G_M38004_IG26
- mov r13, gword ptr [rax+0x10]
- ;; size=29 bbWeight=0.50 PerfScore 4.75
-G_M38004_IG11:
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsEnum():ubyte:this
call [rax]System.RuntimeType:get_IsEnum():ubyte:this
test eax, eax
- je SHORT G_M38004_IG13
+ je SHORT G_M38004_IG10
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:get_IsActualEnum():ubyte:this
call [rax]System.RuntimeType:get_IsActualEnum():ubyte:this
test eax, eax
- je G_M38004_IG25
+ je G_M38004_IG20
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M38004_IG24
- ;; size=61 bbWeight=0.50 PerfScore 6.88
-G_M38004_IG12:
+ je G_M38004_IG19
+ ;; size=94 bbWeight=0.50 PerfScore 9.38
+G_M38004_IG09:
mov rdi, 0xD1FFAB1E ; data for System.Enum:s_underlyingTypes
mov r14, gword ptr [rdi]
mov rdi, qword ptr [r15+0x18]
call System.Enum:InternalGetCorElementType(ulong):ubyte
cmp eax, dword ptr [r14+0x08]
- jae G_M38004_IG26
+ jae G_M38004_IG22
mov edi, eax
mov r14, gword ptr [r14+8*rdi+0x10]
- jmp SHORT G_M38004_IG14
+ jmp SHORT G_M38004_IG11
;; size=41 bbWeight=0.50 PerfScore 6.75
-G_M38004_IG13:
+G_M38004_IG10:
mov r14, r15
;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M38004_IG14:
- mov rdi, r13
- mov rax, qword ptr [r13]
+G_M38004_IG11:
+ xor rdi, rdi
+ mov rax, qword ptr [0x0000]
mov r15, qword ptr [rax+0x70]
call [r15+0x30]System.Type:get_IsEnum():ubyte:this
test eax, eax
- je SHORT G_M38004_IG15
- mov rdi, r13
- mov rax, qword ptr [r13]
- mov rax, qword ptr [rax+0xA0]
- call [rax+0x18]System.Type:GetEnumUnderlyingType():System.Type:this
- jmp SHORT G_M38004_IG16
- ;; size=38 bbWeight=0.50 PerfScore 8.88
-G_M38004_IG15:
- mov rax, r13
- ;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M38004_IG16:
+ jne G_M38004_IG21
mov rdi, r14
- mov rsi, rax
+ xor rsi, rsi
mov rax, 0xD1FFAB1E ; code for System.Type:op_Equality(System.Type,System.Type):ubyte
call [rax]System.Type:op_Equality(System.Type,System.Type):ubyte
test eax, eax
- je SHORT G_M38004_IG19
- mov rdi, r13
+ je SHORT G_M38004_IG14
+ xor rdi, rdi
call [r15+0x30]System.Type:get_IsEnum():ubyte:this
test eax, eax
- je SHORT G_M38004_IG17
- mov rdi, r13
+ je SHORT G_M38004_IG12
+ xor rdi, rdi
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.Enum:ToObject(System.Type,System.Object):System.Object
call [rax]System.Enum:ToObject(System.Type,System.Object):System.Object
- jmp SHORT G_M38004_IG18
- ;; size=53 bbWeight=0.50 PerfScore 7.62
-G_M38004_IG17:
+ jmp SHORT G_M38004_IG13
+ ;; size=76 bbWeight=0.50 PerfScore 11.88
+G_M38004_IG12:
mov rdi, rbx
- mov rsi, r13
+ xor rsi, rsi
xor rdx, rdx
mov rax, 0xD1FFAB1E ; code for System.Convert:ChangeType(System.Object,System.Type,System.IFormatProvider):System.Object
call [rax]System.Convert:ChangeType(System.Object,System.Type,System.IFormatProvider):System.Object
- ;; size=20 bbWeight=0.50 PerfScore 2.00
-G_M38004_IG18:
+ ;; size=19 bbWeight=0.50 PerfScore 2.00
+G_M38004_IG13:
mov rbx, rax
;; size=3 bbWeight=0.50 PerfScore 0.12
-G_M38004_IG19:
- lea rdi, [rbp-0x30]
+G_M38004_IG14:
+ lea rdi, [rbp-0x28]
mov rdx, rbx
mov rsi, 0xD1FFAB1E ; System.Nullable`1[int]
call CORINFO_HELP_UNBOX_NULLABLE
- mov rax, qword ptr [rbp-0x30]
+ mov rax, qword ptr [rbp-0x28]
;; size=26 bbWeight=0.50 PerfScore 1.50
-G_M38004_IG20:
- add rsp, 16
+G_M38004_IG15:
+ add rsp, 24
pop rbx
- pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=13 bbWeight=0.50 PerfScore 1.88
-G_M38004_IG21:
+ ;; size=11 bbWeight=0.50 PerfScore 1.62
+G_M38004_IG16:
xor eax, eax
;; size=2 bbWeight=0.50 PerfScore 0.12
-G_M38004_IG22:
- add rsp, 16
+G_M38004_IG17:
+ add rsp, 24
pop rbx
- pop r13
pop r14
pop r15
pop rbp
ret
- ;; size=13 bbWeight=0.50 PerfScore 1.88
-G_M38004_IG23:
+ ;; size=11 bbWeight=0.50 PerfScore 1.62
+G_M38004_IG18:
mov rdi, 0xD1FFAB1E ; System.DBNull
call CORINFO_HELP_GET_GCSTATIC_BASE
jmp G_M38004_IG03
;; size=20 bbWeight=0 PerfScore 0.00
-G_M38004_IG24:
+G_M38004_IG19:
mov rdi, 0xD1FFAB1E ; System.Enum
call CORINFO_HELP_GET_GCSTATIC_BASE
- jmp G_M38004_IG12
+ jmp G_M38004_IG09
;; size=20 bbWeight=0 PerfScore 0.00
-G_M38004_IG25:
+G_M38004_IG20:
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:ThrowMustBeEnum()
call [rax]System.RuntimeType:ThrowMustBeEnum()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M38004_IG26:
+G_M38004_IG21:
+ mov edi, 0x4C5
+ mov rsi, 0xD1FFAB1E
+ call CORINFO_HELP_STRCNS
+ mov rdi, rax
+ mov rax, 0xD1FFAB1E ; code for System.ArgumentNullException:Throw(System.String)
+ call [rax]System.ArgumentNullException:Throw(System.String)
+ int3
+ ;; size=36 bbWeight=0 PerfScore 0.00
+G_M38004_IG22:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 556, prolog size 17, PerfScore 69.06, instruction count 141, allocated bytes for code 556 (MethodHash=b9ca6b8b) for method System.Data.DataRowExtensions+UnboxT`1[System.Nullable`1[int]]:NullableFieldUsingReflection(System.Object):System.Nullable`1[int] (FullOpts)
+; Total bytes of code 494, prolog size 15, PerfScore 53.44, instruction count 121, allocated bytes for code 494 (MethodHash=b9ca6b8b) for method System.Data.DataRowExtensions+UnboxT`1[System.Nullable`1[int]]:NullableFieldUsingReflection(System.Object):System.Nullable`1[int] (FullOpts)
-48 (-0.52 % of base) - System.Xml.Serialization.XmlSerializationReaderILGen:WriteLiteralStructMethod(System.Xml.Serialization.StructMapping):this
; Assembly listing for method System.Xml.Serialization.XmlSerializationReaderILGen:WriteLiteralStructMethod(System.Xml.Serialization.StructMapping):this (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX512 - Unix
; FullOpts code
; optimized code
; rbp based frame
; fully interruptible
; No PGO data
; 0 inlinees with PGO data; 176 single block inlinees; 43 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T02] (139, 88 ) ref -> rbx this class-hnd single-def <System.Xml.Serialization.XmlSerializationReaderILGen>
; V01 arg1 [V01,T11] ( 30, 21.50) ref -> r15 class-hnd single-def <System.Xml.Serialization.StructMapping>
; V02 loc0 [V02,T156] ( 4, 2 ) ref -> r14 ld-addr-op class-hnd <System.String>
; V03 loc1 [V03,T161] ( 2, 2 ) ref -> r13 class-hnd exact single-def <System.String>
;* V04 loc2 [V04 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def <System.Collections.Generic.List`1[System.Type]>
;* V05 loc3 [V05 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def <System.Collections.Generic.List`1[System.String]>
;* V06 loc4 [V06 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Reflection.Emit.LocalBuilder>
;* V07 loc5 [V07 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Reflection.Emit.LocalBuilder>
; V08 loc6 [V08,T162] ( 2, 2 ) ref -> [rbp-0xB8] class-hnd spill-single-def <System.Reflection.MethodInfo>
-; V09 loc7 [V09,T233] ( 2, 1.50) ref -> [rbp-0xC0] class-hnd spill-single-def <System.Reflection.MethodInfo>
+; V09 loc7 [V09,T234] ( 2, 1.50) ref -> [rbp-0xC0] class-hnd spill-single-def <System.Reflection.MethodInfo>
;* V10 loc8 [V10 ] ( 0, 0 ) struct ( 8) zero-ref <System.Reflection.Emit.Label>
;* V11 loc9 [V11 ] ( 0, 0 ) struct ( 8) zero-ref <System.Reflection.Emit.Label>
-; V12 loc10 [V12,T234] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.MethodInfo>
-; V13 loc11 [V13,T235] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.ConstructorInfo>
-; V14 loc12 [V14,T236] ( 2, 1 ) ref -> [rbp-0xC8] class-hnd spill-single-def <System.Reflection.MethodInfo>
-; V15 loc13 [V15,T237] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.MethodInfo>
-; V16 loc14 [V16,T238] ( 2, 1 ) ref -> r13 class-hnd single-def <System.Reflection.MethodInfo>
-; V17 loc15 [V17,T239] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.MethodInfo>
+; V12 loc10 [V12,T235] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.MethodInfo>
+; V13 loc11 [V13,T236] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.ConstructorInfo>
+; V14 loc12 [V14,T237] ( 2, 1 ) ref -> [rbp-0xC8] class-hnd spill-single-def <System.Reflection.MethodInfo>
+; V15 loc13 [V15,T238] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.MethodInfo>
+; V16 loc14 [V16,T239] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.MethodInfo>
+; V17 loc15 [V17,T240] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.MethodInfo>
; V18 loc16 [V18,T201] ( 3, 1.50) ref -> [rbp-0xD0] class-hnd spill-single-def <System.Reflection.Emit.LocalBuilder>
; V19 loc17 [V19,T32] ( 8, 11 ) ref -> r12 class-hnd exact single-def <System.Xml.Serialization.MemberMapping[]>
; V20 loc18 [V20,T57] ( 8, 7 ) ref -> [rbp-0xD8] class-hnd <System.Xml.Serialization.XmlSerializationReaderILGen+Member>
; V21 loc19 [V21,T58] ( 8, 7 ) ref -> [rbp-0xE0] class-hnd <System.Xml.Serialization.XmlSerializationReaderILGen+Member>
-; V22 loc20 [V22,T110] ( 4, 3.50) ref -> [rbp-0xE8] class-hnd <System.Xml.Serialization.XmlSerializationReaderILGen+Member>
+; V22 loc20 [V22,T109] ( 4, 3.50) ref -> [rbp-0xE8] class-hnd <System.Xml.Serialization.XmlSerializationReaderILGen+Member>
; V23 loc21 [V23,T90] ( 2, 4.50) ubyte -> [rbp-0x2C] spill-single-def
; V24 loc22 [V24,T27] ( 8, 13 ) ref -> [rbp-0xF0] class-hnd exact spill-single-def <System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]>
; V25 loc23 [V25,T15] ( 20, 19 ) ref -> [rbp-0xF8] class-hnd exact spill-single-def <System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]>
; V26 loc24 [V26,T08] ( 14, 25 ) ref -> [rbp-0x100] class-hnd exact spill-single-def <System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]>
; V27 loc25 [V27,T202] ( 3, 1.50) ref -> [rbp-0x108] class-hnd exact spill-single-def <System.Xml.Serialization.XmlSerializationReaderILGen+Member[]>
; V28 loc26 [V28,T203] ( 3, 1.50) ref -> [rbp-0x110] class-hnd exact spill-single-def <System.Xml.Serialization.XmlSerializationReaderILGen+Member[]>
; V29 loc27 [V29,T148] ( 5, 2.50) ref -> [rbp-0x118] class-hnd exact spill-single-def <System.Xml.Serialization.XmlSerializationReaderILGen+Member[]>
-; V30 loc28 [V30,T111] ( 6, 3 ) ref -> [rbp-0x120] class-hnd spill-single-def <System.Reflection.MethodInfo>
-; V31 loc29 [V31,T240] ( 2, 1 ) ref -> [rbp-0x128] class-hnd spill-single-def <System.Reflection.MethodInfo>
-; V32 loc30 [V32,T241] ( 2, 1 ) ref -> [rbp-0x130] class-hnd spill-single-def <System.Reflection.MethodInfo>
-; V33 loc31 [V33,T242] ( 2, 1 ) ref -> [rbp-0x138] class-hnd spill-single-def <System.Reflection.MethodInfo>
-; V34 loc32 [V34,T243] ( 2, 1 ) ref -> r13 class-hnd single-def <System.Reflection.MethodInfo>
+; V30 loc28 [V30,T110] ( 6, 3 ) ref -> [rbp-0x120] class-hnd spill-single-def <System.Reflection.MethodInfo>
+; V31 loc29 [V31,T241] ( 2, 1 ) ref -> [rbp-0x128] class-hnd spill-single-def <System.Reflection.MethodInfo>
+; V32 loc30 [V32,T242] ( 2, 1 ) ref -> [rbp-0x130] class-hnd spill-single-def <System.Reflection.MethodInfo>
+; V33 loc31 [V33,T243] ( 2, 1 ) ref -> [rbp-0x138] class-hnd spill-single-def <System.Reflection.MethodInfo>
+; V34 loc32 [V34,T244] ( 2, 1 ) ref -> r13 class-hnd single-def <System.Reflection.MethodInfo>
; V35 loc33 [V35,T204] ( 3, 1.50) ref -> rcx class-hnd exact single-def <System.String>
-; V36 loc34 [V36,T244] ( 2, 1 ) ref -> r13 class-hnd single-def <System.Reflection.MethodInfo>
-; V37 loc35 [V37,T245] ( 2, 1 ) ref -> r13 class-hnd single-def <System.Reflection.MethodInfo>
-; V38 loc36 [V38,T246] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.MethodInfo>
-;* V39 loc37 [V39,T262] ( 0, 0 ) int -> zero-ref
+; V36 loc34 [V36,T245] ( 2, 1 ) ref -> r13 class-hnd single-def <System.Reflection.MethodInfo>
+; V37 loc35 [V37,T246] ( 2, 1 ) ref -> r13 class-hnd single-def <System.Reflection.MethodInfo>
+; V38 loc36 [V38,T247] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.MethodInfo>
+;* V39 loc37 [V39,T263] ( 0, 0 ) int -> zero-ref
; V40 loc38 [V40,T00] ( 27,102 ) ref -> [rbp-0x140] class-hnd exact spill-single-def <System.Xml.Serialization.MemberMapping>
; V41 loc39 [V41,T28] ( 4, 12 ) ref -> [rbp-0x148] class-hnd exact spill-single-def <System.String>
; V42 loc40 [V42,T05] ( 18, 40 ) ref -> [rbp-0x150] class-hnd exact spill-single-def <System.Xml.Serialization.XmlSerializationReaderILGen+Member>
; V43 loc41 [V43 ] ( 17, 34 ) struct (40) [rbp-0x58] do-not-enreg[XSF] must-init addr-exposed ld-addr-op <System.Runtime.CompilerServices.DefaultInterpolatedStringHandler>
;* V44 loc42 [V44,T37] ( 0, 0 ) int -> zero-ref
; V45 loc43 [V45 ] ( 2, 0 ) ref -> [rbp-0x60] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <System.Xml.Serialization.StructMapping>
;* V46 loc44 [V46 ] ( 0, 0 ) ref -> zero-ref class-hnd exact <System.Xml.Serialization.XmlSerializationReaderILGen+Member>
; V47 OutArgs [V47 ] ( 1, 1 ) struct (16) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V48 tmp1 [V48,T63] ( 3, 6 ) ref -> r12 class-hnd exact single-def "NewObj constructor temp" <System.Xml.Serialization.CodeGenerator>
; V49 tmp2 [V49,T12] ( 15, 22 ) ref -> r12 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Type]>
; V50 tmp3 [V50,T13] ( 15, 22 ) ref -> [rbp-0x158] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.String]>
; V51 tmp4 [V51,T24] ( 7, 14 ) ref -> [rbp-0x160] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V52 tmp5 [V52 ] ( 0, 0 ) ref -> zero-ref class-hnd "impAppendStmt" <System.Type>
;* V53 tmp6 [V53 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.Xml.Serialization.MethodBuilderInfo>
-; V54 tmp7 [V54,T95] ( 2, 4 ) ref -> r12 class-hnd single-def "impAppendStmt" <System.Type[]>
-; V55 tmp8 [V55,T115] ( 3, 3 ) ref -> rax class-hnd exact single-def "dup spill" <System.Type[]>
+; V54 tmp7 [V54,T94] ( 2, 4 ) ref -> r12 class-hnd single-def "impAppendStmt" <System.Type[]>
+; V55 tmp8 [V55,T114] ( 3, 3 ) ref -> rax class-hnd exact single-def "dup spill" <System.Type[]>
;* V56 tmp9 [V56 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
;* V57 tmp10 [V57 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
-; V58 tmp11 [V58,T116] ( 3, 3 ) ref -> [rbp-0x168] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]>
-; V59 tmp12 [V59,T117] ( 3, 3 ) ref -> [rbp-0x170] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]>
-; V60 tmp13 [V60,T118] ( 3, 3 ) ref -> [rbp-0x178] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]>
+; V58 tmp11 [V58,T115] ( 3, 3 ) ref -> [rbp-0x168] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]>
+; V59 tmp12 [V59,T116] ( 3, 3 ) ref -> [rbp-0x170] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]>
+; V60 tmp13 [V60,T117] ( 3, 3 ) ref -> [rbp-0x178] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]>
; V61 tmp14 [V61,T10] ( 3, 24 ) ref -> [rbp-0x180] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Serialization.XmlSerializationReaderILGen+Member>
; V62 tmp15 [V62,T25] ( 3, 10 ) ref -> rsi "ISINST eval op1"
;* V63 tmp16 [V63,T59] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Xml.Serialization.ArrayMapping>
; V64 tmp17 [V64,T26] ( 3, 10 ) ref -> rdi "ISINST eval op1"
;* V65 tmp18 [V65,T60] ( 0, 0 ) ref -> zero-ref class-hnd "spilling qmarkNull" <System.Xml.Serialization.ArrayMapping>
; V66 tmp19 [V66,T14] ( 5, 20 ) ref -> [rbp-0x188] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Serialization.XmlSerializationReaderILGen+Member>
-; V67 tmp20 [V67,T263] ( 6, 0 ) ref -> r14 class-hnd exact "dup spill" <System.Object[]>
-; V68 tmp21 [V68,T266] ( 2, 0 ) ref -> rbx class-hnd exact "impAppendStmt" <System.String>
-; V69 tmp22 [V69,T267] ( 2, 0 ) ref -> rsi class-hnd exact "Strict ordering of exceptions for Array store" <System.String>
-; V70 tmp23 [V70,T268] ( 2, 0 ) ref -> rax class-hnd exact "Strict ordering of exceptions for Array store" <System.String>
-; V71 tmp24 [V71,T269] ( 2, 0 ) ref -> rsi class-hnd exact "Strict ordering of exceptions for Array store" <System.String>
-; V72 tmp25 [V72,T264] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.InvalidOperationException>
+; V67 tmp20 [V67,T264] ( 6, 0 ) ref -> r14 class-hnd exact "dup spill" <System.Object[]>
+; V68 tmp21 [V68,T267] ( 2, 0 ) ref -> rbx class-hnd exact "impAppendStmt" <System.String>
+; V69 tmp22 [V69,T268] ( 2, 0 ) ref -> rsi class-hnd exact "Strict ordering of exceptions for Array store" <System.String>
+; V70 tmp23 [V70,T269] ( 2, 0 ) ref -> rax class-hnd exact "Strict ordering of exceptions for Array store" <System.String>
+; V71 tmp24 [V71,T270] ( 2, 0 ) ref -> rsi class-hnd exact "Strict ordering of exceptions for Array store" <System.String>
+; V72 tmp25 [V72,T265] ( 3, 0 ) ref -> r15 class-hnd exact "NewObj constructor temp" <System.InvalidOperationException>
;* V73 tmp26 [V73 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V74 tmp27 [V74 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V75 tmp28 [V75 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
-; V76 tmp29 [V76,T119] ( 3, 3 ) ref -> r13 class-hnd exact single-def "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
+; V76 tmp29 [V76,T118] ( 3, 3 ) ref -> r13 class-hnd exact single-def "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V77 tmp30 [V77 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V78 tmp31 [V78 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V79 tmp32 [V79 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
;* V80 tmp33 [V80 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V81 tmp34 [V81 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.RuntimeType>
; V82 tmp35 [V82,T91] ( 4, 4 ) ref -> rax class-hnd exact single-def "dup spill" <System.Type[]>
;* V83 tmp36 [V83 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
;* V84 tmp37 [V84 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V85 tmp38 [V85 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V86 tmp39 [V86 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V87 tmp40 [V87 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V88 tmp41 [V88 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V89 tmp42 [V89 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V90 tmp43 [V90 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
-; V91 tmp44 [V91,T120] ( 3, 3 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Type[]>
+; V91 tmp44 [V91,T119] ( 3, 3 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Type[]>
;* V92 tmp45 [V92 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
; V93 tmp46 [V93,T163] ( 2, 2 ) ref -> rax class-hnd single-def "Strict ordering of exceptions for Array store" <System.Type>
;* V94 tmp47 [V94 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V95 tmp48 [V95 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V96 tmp49 [V96 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
; V97 tmp50 [V97,T92] ( 4, 4 ) ref -> rax class-hnd exact single-def "dup spill" <System.Type[]>
;* V98 tmp51 [V98 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
;* V99 tmp52 [V99 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V100 tmp53 [V100 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
-; V101 tmp54 [V101,T121] ( 3, 3 ) ref -> rax class-hnd exact single-def "dup spill" <System.Type[]>
+; V101 tmp54 [V101,T120] ( 3, 3 ) ref -> rax class-hnd exact single-def "dup spill" <System.Type[]>
;* V102 tmp55 [V102 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
;* V103 tmp56 [V103 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V104 tmp57 [V104 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V105 tmp58 [V105 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V106 tmp59 [V106 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
;* V107 tmp60 [V107 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.String>
-; V108 tmp61 [V108,T122] ( 3, 3 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Type[]>
+; V108 tmp61 [V108,T121] ( 3, 3 ) ref -> r14 class-hnd exact single-def "dup spill" <System.Type[]>
;* V109 tmp62 [V109 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
; V110 tmp63 [V110,T164] ( 2, 2 ) ref -> rax class-hnd single-def "Strict ordering of exceptions for Array store" <System.Type>
;* V111 tmp64 [V111 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V112 tmp65 [V112 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V113 tmp66 [V113 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
;* V114 tmp67 [V114 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V115 tmp68 [V115 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V116 tmp69 [V116 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
;* V117 tmp70 [V117 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V118 tmp71 [V118,T64] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.Xml.Serialization.TypeMapping,System.String]>
; V119 tmp72 [V119,T151] ( 3, 2.50) byref -> rax single-def "Inline stloc first use temp"
-; V120 tmp73 [V120,T96] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.TypeDesc>
+; V120 tmp73 [V120,T95] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.TypeDesc>
; V121 tmp74 [V121,T205] ( 3, 1.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Type[]>
; V122 tmp75 [V122,T158] ( 4, 2 ) int -> rax "Inline stloc first use temp"
; V123 tmp76 [V123,T206] ( 3, 1.50) ref -> rcx class-hnd single-def "Inline stloc first use temp" <System.String[]>
; V124 tmp77 [V124,T159] ( 4, 2 ) int -> rdx "Inline stloc first use temp"
; V125 tmp78 [V125,T152] ( 3, 2.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Type[]>
-; V126 tmp79 [V126,T113] ( 4, 3 ) int -> rcx "Inline stloc first use temp"
+; V126 tmp79 [V126,T112] ( 4, 3 ) int -> rcx "Inline stloc first use temp"
; V127 tmp80 [V127,T153] ( 3, 2.50) ref -> rcx class-hnd single-def "Inline stloc first use temp" <System.String[]>
-; V128 tmp81 [V128,T114] ( 4, 3 ) int -> rdx "Inline stloc first use temp"
+; V128 tmp81 [V128,T113] ( 4, 3 ) int -> rdx "Inline stloc first use temp"
;* V129 tmp82 [V129 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V130 tmp83 [V130 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Inlining Arg" <System.String>
; V131 tmp84 [V131,T165] ( 2, 2 ) ref -> r14 class-hnd single-def "Inline return value spill temp" <System.Xml.Serialization.MethodBuilderInfo>
; V132 tmp85 [V132,T65] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.MethodBuilderInfo]>
-; V133 tmp86 [V133,T123] ( 3, 3 ) byref -> rax single-def "Inline stloc first use temp"
+; V133 tmp86 [V133,T122] ( 3, 3 ) byref -> rax single-def "Inline stloc first use temp"
;* V134 tmp87 [V134 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.MethodBuilderInfo>
-; V135 tmp88 [V135,T97] ( 2, 4 ) ref -> [rbp-0x190] class-hnd spill-single-def "Inlining Arg" <System.__Canon[]>
+; V135 tmp88 [V135,T96] ( 2, 4 ) ref -> [rbp-0x190] class-hnd spill-single-def "Inlining Arg" <System.__Canon[]>
; V136 tmp89 [V136,T66] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Reflection.Emit.MethodBuilder>
;* V137 tmp90 [V137 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
; V138 tmp91 [V138,T39] ( 5, 8 ) ref -> r14 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V139 tmp92 [V139,T56] ( 12, 7 ) ref -> [rbp-0x198] ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
-;* V140 tmp93 [V140,T252] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V140 tmp93 [V140,T253] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V141 tmp94 [V141 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[System.Type,System.String]>
;* V142 tmp95 [V142 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ValueTuple`2[System.Type,System.String]>
; V143 tmp96 [V143,T157] ( 3, 1.50) ref -> r12 ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Collections.Generic.Queue`1[System.Reflection.Emit.LocalBuilder]>
-;* V144 tmp97 [V144,T253] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V144 tmp97 [V144,T254] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V145 tmp98 [V145,T67] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.ValueTuple`2[System.Type,System.String],System.Collections.Generic.Queue`1[System.Reflection.Emit.LocalBuilder]]>
; V146 tmp99 [V146,T154] ( 3, 2.50) byref -> rax single-def "Inline stloc first use temp"
;* V147 tmp100 [V147 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.Queue`1[System.Reflection.Emit.LocalBuilder]>
-; V148 tmp101 [V148,T98] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
+; V148 tmp101 [V148,T97] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
;* V149 tmp102 [V149 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Reflection.Emit.LocalBuilder>
; V150 tmp103 [V150,T68] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
-; V151 tmp104 [V151,T112] ( 4, 3 ) ref -> r14 class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
+; V151 tmp104 [V151,T111] ( 4, 3 ) ref -> r14 class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
; V152 tmp105 [V152,T38] ( 5, 9 ) ref -> r14 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V153 tmp106 [V153 ] ( 5, 4.50) ref -> [rbp-0x68] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
-; V154 tmp107 [V154,T99] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
-; V155 tmp108 [V155,T100] ( 2, 4 ) ref -> rdx class-hnd single-def "Inlining Arg" <System.Reflection.Emit.LocalBuilder>
+; V154 tmp107 [V154,T98] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
+; V155 tmp108 [V155,T99] ( 2, 4 ) ref -> rdx class-hnd single-def "Inlining Arg" <System.Reflection.Emit.LocalBuilder>
; V156 tmp109 [V156,T69] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
-; V157 tmp110 [V157,T101] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Type[]>
-; V158 tmp111 [V158,T102] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Type[]>
+; V157 tmp110 [V157,T100] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Type[]>
+; V158 tmp111 [V158,T101] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Type[]>
;* V159 tmp112 [V159 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V160 tmp113 [V160 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V161 tmp114 [V161,T70] ( 3, 6 ) ref -> [rbp-0x1A0] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V162 tmp115 [V162 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Xml.Serialization.ArgBuilder>
; V163 tmp116 [V163,T71] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.ArgBuilder]>
-; V164 tmp117 [V164,T124] ( 3, 3 ) byref -> rax single-def "Inline stloc first use temp"
+; V164 tmp117 [V164,T123] ( 3, 3 ) byref -> rax single-def "Inline stloc first use temp"
;* V165 tmp118 [V165 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.ArgBuilder>
;* V166 tmp119 [V166 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V167 tmp120 [V167 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
-; V168 tmp121 [V168,T103] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.TypeDesc>
-; V169 tmp122 [V169,T125] ( 3, 3 ) ref -> [rbp-0x1A8] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
-; V170 tmp123 [V170,T247] ( 2, 1 ) ref -> rsi class-hnd single-def "Inline return value spill temp" <System.Xml.Serialization.ArgBuilder>
-; V171 tmp124 [V171,T126] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.ArgBuilder]>
+; V168 tmp121 [V168,T102] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.TypeDesc>
+; V169 tmp122 [V169,T124] ( 3, 3 ) ref -> [rbp-0x1A8] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
+; V170 tmp123 [V170,T248] ( 2, 1 ) ref -> rsi class-hnd single-def "Inline return value spill temp" <System.Xml.Serialization.ArgBuilder>
+; V171 tmp124 [V171,T125] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.ArgBuilder]>
; V172 tmp125 [V172,T207] ( 3, 1.50) byref -> rax single-def "Inline stloc first use temp"
;* V173 tmp126 [V173 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.ArgBuilder>
-; V174 tmp127 [V174,T127] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
+; V174 tmp127 [V174,T126] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V175 tmp128 [V175,T72] ( 3, 6 ) ref -> [rbp-0x1B0] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V176 tmp129 [V176,T166] ( 2, 2 ) ref -> rsi class-hnd single-def "Inline return value spill temp" <System.Xml.Serialization.ArgBuilder>
; V177 tmp130 [V177,T73] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.ArgBuilder]>
-; V178 tmp131 [V178,T128] ( 3, 3 ) byref -> rax single-def "Inline stloc first use temp"
+; V178 tmp131 [V178,T127] ( 3, 3 ) byref -> rax single-def "Inline stloc first use temp"
;* V179 tmp132 [V179 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.ArgBuilder>
; V180 tmp133 [V180,T74] ( 3, 6 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V181 tmp134 [V181 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
-; V182 tmp135 [V182,T129] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
+; V182 tmp135 [V182,T128] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V183 tmp136 [V183 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V184 tmp137 [V184 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
-; V185 tmp138 [V185,T270] ( 2, 0 ) ref -> rbx class-hnd exact single-def "Inlining Arg" <System.String>
-; V186 tmp139 [V186,T265] ( 3, 0 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.NotSupportedException>
+; V185 tmp138 [V185,T271] ( 2, 0 ) ref -> rbx class-hnd exact single-def "Inlining Arg" <System.String>
+; V186 tmp139 [V186,T266] ( 3, 0 ) ref -> r15 class-hnd exact single-def "NewObj constructor temp" <System.NotSupportedException>
;* V187 tmp140 [V187 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V188 tmp141 [V188,T75] ( 3, 6 ) ref -> r14 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V189 tmp142 [V189 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Reflection.Emit.LocalBuilder>
; V190 tmp143 [V190,T167] ( 2, 2 ) ref -> rsi class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
; V191 tmp144 [V191,T87] ( 3, 5 ) ref -> [rbp-0x1B8] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
; V192 tmp145 [V192 ] ( 6, 4 ) ref -> [rbp-0x70] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
;* V193 tmp146 [V193 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V194 tmp147 [V194,T254] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V194 tmp147 [V194,T255] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V195 tmp148 [V195,T76] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
; V196 tmp149 [V196,T155] ( 3, 2.50) byref -> rax single-def "Inline stloc first use temp"
;* V197 tmp150 [V197 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V198 tmp151 [V198 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V199 tmp152 [V199 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V200 tmp153 [V200 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V201 tmp154 [V201 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V202 tmp155 [V202,T77] ( 3, 6 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V203 tmp156 [V203 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V204 tmp157 [V204 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V205 tmp158 [V205 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V206 tmp159 [V206 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V207 tmp160 [V207 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V208 tmp161 [V208 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
-; V209 tmp162 [V209,T104] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.TypeDesc>
-; V210 tmp163 [V210,T130] ( 3, 3 ) ref -> r14 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
+; V209 tmp162 [V209,T103] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.TypeDesc>
+; V210 tmp163 [V210,T129] ( 3, 3 ) ref -> r14 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V211 tmp164 [V211 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Reflection.Emit.LocalBuilder>
-; V212 tmp165 [V212,T248] ( 2, 1 ) ref -> rsi class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
-; V213 tmp166 [V213,T131] ( 3, 3 ) ref -> r13 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
+; V212 tmp165 [V212,T249] ( 2, 1 ) ref -> rsi class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
+; V213 tmp166 [V213,T130] ( 3, 3 ) ref -> r13 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
; V214 tmp167 [V214 ] ( 6, 3 ) ref -> [rbp-0x78] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
;* V215 tmp168 [V215 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V216 tmp169 [V216,T255] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V217 tmp170 [V217,T132] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
+;* V216 tmp169 [V216,T256] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V217 tmp170 [V217,T131] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
; V218 tmp171 [V218,T208] ( 3, 1.50) byref -> rax single-def "Inline stloc first use temp"
-; V219 tmp172 [V219,T133] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
+; V219 tmp172 [V219,T132] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V220 tmp173 [V220 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V221 tmp174 [V221 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V222 tmp175 [V222 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
;* V223 tmp176 [V223 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
;* V224 tmp177 [V224 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V225 tmp178 [V225 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
; V226 tmp179 [V226,T168] ( 2, 2 ) ref -> r9 class-hnd exact single-def "Inlining Arg" <System.Type[]>
;* V227 tmp180 [V227 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
-; V228 tmp181 [V228,T249] ( 2, 1 ) ref -> r13 class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
-; V229 tmp182 [V229,T134] ( 3, 3 ) ref -> r13 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
+; V228 tmp181 [V228,T250] ( 2, 1 ) ref -> r13 class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
+; V229 tmp182 [V229,T133] ( 3, 3 ) ref -> r13 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
; V230 tmp183 [V230 ] ( 6, 3 ) ref -> [rbp-0x80] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
;* V231 tmp184 [V231 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V232 tmp185 [V232,T256] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V233 tmp186 [V233,T135] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
+;* V232 tmp185 [V232,T257] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V233 tmp186 [V233,T134] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
; V234 tmp187 [V234,T209] ( 3, 1.50) byref -> rax single-def "Inline stloc first use temp"
;* V235 tmp188 [V235 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inline return value spill temp" <System.Xml.Serialization.MemberMapping[]>
; V236 tmp189 [V236,T210] ( 3, 1.50) ref -> [rbp-0x1C0] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Xml.Serialization.MemberMapping[]>
; V237 tmp190 [V237,T169] ( 2, 2 ) ref -> r12 class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.MemberInfo]>
;* V238 tmp191 [V238 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
;* V239 tmp192 [V239 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
;* V240 tmp193 [V240 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ushort]>
; V241 tmp194 [V241,T16] ( 4, 16 ) int -> rdi "Inlining Arg"
;* V242 tmp195 [V242 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
; V243 tmp196 [V243,T45] ( 2, 8 ) byref -> rax "Inlining Arg"
; V244 tmp197 [V244,T53] ( 2, 8 ) int -> rsi "Inlining Arg"
-;* V245 tmp198 [V245,T107] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
+;* V245 tmp198 [V245,T106] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V246 tmp199 [V246 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
;* V247 tmp200 [V247 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V248 tmp201 [V248 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V249 tmp202 [V249 ] ( 0, 0 ) struct (16) zero-ref "spilled call-like call argument" <System.Span`1[ushort]>
; V250 tmp203 [V250,T17] ( 4, 16 ) int -> rdi "Inlining Arg"
;* V251 tmp204 [V251 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "NewObj constructor temp" <System.Span`1[ushort]>
; V252 tmp205 [V252,T46] ( 2, 8 ) byref -> rax "Inlining Arg"
; V253 tmp206 [V253,T54] ( 2, 8 ) int -> rsi "Inlining Arg"
-;* V254 tmp207 [V254,T108] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
+;* V254 tmp207 [V254,T107] ( 0, 0 ) ubyte -> zero-ref "Inline stloc first use temp"
;* V255 tmp208 [V255 ] ( 0, 0 ) struct (16) zero-ref ld-addr-op "Inlining Arg" <System.Span`1[ushort]>
;* V256 tmp209 [V256 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
;* V257 tmp210 [V257 ] ( 0, 0 ) byref -> zero-ref "Inlining Arg"
; V258 tmp211 [V258,T47] ( 2, 8 ) ref -> rax class-hnd exact "Inlining Arg" <System.String>
; V259 tmp212 [V259,T18] ( 2, 16 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V260 tmp213 [V260 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V261 tmp214 [V261 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
; V262 tmp215 [V262,T48] ( 2, 8 ) ref -> rax class-hnd exact "Inlining Arg" <System.String>
;* V263 tmp216 [V263 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.AttributeAccessor>
;* V264 tmp217 [V264 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.ElementAccessor>
;* V265 tmp218 [V265,T55] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V266 tmp219 [V266,T04] ( 3, 48 ) ref -> rax class-hnd exact "Inlining Arg" <System.String>
;* V267 tmp220 [V267,T198] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V268 tmp221 [V268 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
-; V269 tmp222 [V269,T271] ( 2, 0 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Xml.Serialization.StructMapping>
+; V269 tmp222 [V269,T272] ( 2, 0 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Xml.Serialization.StructMapping>
;* V270 tmp223 [V270 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V271 tmp224 [V271 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.ElementAccessor>
;* V272 tmp225 [V272 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
;* V273 tmp226 [V273 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
; V274 tmp227 [V274,T40] ( 4, 8 ) ref -> rcx class-hnd "Inline stloc first use temp" <System.Xml.Serialization.XmlSerializationReaderILGen+Member[]>
; V275 tmp228 [V275,T33] ( 5, 10 ) int -> rdx "Inline stloc first use temp"
; V276 tmp229 [V276,T41] ( 4, 8 ) ref -> r11 class-hnd "Inline stloc first use temp" <System.Xml.Serialization.XmlSerializationReaderILGen+Member[]>
; V277 tmp230 [V277,T34] ( 5, 10 ) int -> rdi "Inline stloc first use temp"
;* V278 tmp231 [V278,T199] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V279 tmp232 [V279,T19] ( 2, 16 ) ref -> rdi class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
; V280 tmp233 [V280,T42] ( 4, 8 ) ref -> rdx class-hnd "Inline stloc first use temp" <System.Xml.Serialization.XmlSerializationReaderILGen+Member[]>
; V281 tmp234 [V281,T35] ( 5, 10 ) int -> r8 "Inline stloc first use temp"
;* V282 tmp235 [V282,T200] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V283 tmp236 [V283,T49] ( 2, 8 ) ref -> rsi class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V284 tmp237 [V284 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.ElementAccessor>
; V285 tmp238 [V285,T43] ( 4, 8 ) ref -> r9 class-hnd "Inline stloc first use temp" <System.Xml.Serialization.XmlSerializationReaderILGen+Member[]>
; V286 tmp239 [V286,T36] ( 5, 10 ) int -> r10 "Inline stloc first use temp"
;* V287 tmp240 [V287 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
; V288 tmp241 [V288,T211] ( 3, 1.50) ref -> rdx class-hnd single-def "Inline stloc first use temp" <System.Xml.Serialization.XmlSerializationReaderILGen+Member[]>
; V289 tmp242 [V289,T149] ( 5, 2.50) int -> r8 "Inline stloc first use temp"
; V290 tmp243 [V290,T212] ( 3, 1.50) ref -> r8 class-hnd single-def "Inline stloc first use temp" <System.Xml.Serialization.XmlSerializationReaderILGen+Member[]>
; V291 tmp244 [V291,T150] ( 5, 2.50) int -> r9 "Inline stloc first use temp"
; V292 tmp245 [V292,T170] ( 2, 2 ) ref -> r9 class-hnd exact single-def "Inlining Arg" <System.Type[]>
; V293 tmp246 [V293,T171] ( 2, 2 ) ref -> r9 class-hnd exact single-def "Inlining Arg" <System.Type[]>
; V294 tmp247 [V294,T172] ( 2, 2 ) ref -> r9 class-hnd exact single-def "Inlining Arg" <System.Type[]>
-; V295 tmp248 [V295,T136] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
+; V295 tmp248 [V295,T135] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V296 tmp249 [V296,T173] ( 2, 2 ) ref -> r9 class-hnd exact single-def "Inlining Arg" <System.Type[]>
;* V297 tmp250 [V297 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V298 tmp251 [V298,T174] ( 2, 2 ) ref -> r9 class-hnd exact single-def "Inlining Arg" <System.Type[]>
; V299 tmp252 [V299,T62] ( 6, 6 ) ref -> r13 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V300 tmp253 [V300 ] ( 7, 3.50) ref -> [rbp-0x88] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
; V301 tmp254 [V301,T160] ( 2, 1 ) ubyte -> rax "Inline return value spill temp"
-; V302 tmp255 [V302,T93] ( 4, 4 ) ref -> [rbp-0x1C8] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
-;* V303 tmp256 [V303,T257] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+; V302 tmp255 [V302,T136] ( 3, 3 ) ref -> [rbp-0x1C8] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
+;* V303 tmp256 [V303,T258] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V304 tmp257 [V304,T137] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
; V305 tmp258 [V305,T213] ( 3, 1.50) byref -> rax single-def "Inline stloc first use temp"
-; V306 tmp259 [V306,T250] ( 2, 1 ) ref -> rdi class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
+; V306 tmp259 [V306,T251] ( 2, 1 ) ref -> rdi class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
; V307 tmp260 [V307 ] ( 5, 2.50) ref -> [rbp-0x90] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
; V308 tmp261 [V308,T175] ( 2, 2 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
; V309 tmp262 [V309,T176] ( 2, 2 ) ref -> rdx class-hnd single-def "Inlining Arg" <System.Reflection.Emit.LocalBuilder>
; V310 tmp263 [V310,T138] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
; V311 tmp264 [V311,T177] ( 2, 2 ) ref -> r9 class-hnd exact single-def "Inlining Arg" <System.Type[]>
; V312 tmp265 [V312,T178] ( 2, 2 ) ref -> r9 class-hnd exact single-def "Inlining Arg" <System.Type[]>
;* V313 tmp266 [V313 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V314 tmp267 [V314 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.Reflection.Emit.LocalBuilder>
-; V315 tmp268 [V315,T251] ( 2, 1 ) ref -> rsi class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
-; V316 tmp269 [V316,T94] ( 4, 4 ) ref -> r15 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
+; V315 tmp268 [V315,T252] ( 2, 1 ) ref -> rsi class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
+; V316 tmp269 [V316,T93] ( 4, 4 ) ref -> r15 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
; V317 tmp270 [V317 ] ( 6, 3 ) ref -> [rbp-0x98] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
;* V318 tmp271 [V318 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-;* V319 tmp272 [V319,T258] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V319 tmp272 [V319,T259] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V320 tmp273 [V320,T139] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
; V321 tmp274 [V321,T214] ( 3, 1.50) byref -> rax single-def "Inline stloc first use temp"
;* V322 tmp275 [V322 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V323 tmp276 [V323,T88] ( 6, 4.50) int -> [rbp-0x9C] "field V10.m_label (fldOffset=0x0)" P-INDEP
; V324 tmp277 [V324,T89] ( 6, 4.50) int -> [rbp-0xA0] "field V11.m_label (fldOffset=0x0)" P-INDEP
;* V325 tmp278 [V325 ] ( 0, 0 ) int -> zero-ref "field V75.m_label (fldOffset=0x0)" P-INDEP
;* V326 tmp279 [V326 ] ( 0, 0 ) int -> zero-ref "field V79.m_label (fldOffset=0x0)" P-INDEP
;* V327 tmp280 [V327 ] ( 0, 0 ) int -> zero-ref "field V90.m_label (fldOffset=0x0)" P-INDEP
;* V328 tmp281 [V328 ] ( 0, 0 ) int -> zero-ref "field V96.m_label (fldOffset=0x0)" P-INDEP
;* V329 tmp282 [V329 ] ( 0, 0 ) int -> zero-ref "field V106.m_label (fldOffset=0x0)" P-INDEP
;* V330 tmp283 [V330 ] ( 0, 0 ) int -> zero-ref "field V113.m_label (fldOffset=0x0)" P-INDEP
;* V331 tmp284 [V331 ] ( 0, 0 ) int -> zero-ref "field V116.m_label (fldOffset=0x0)" P-INDEP
-;* V332 tmp285 [V332,T260] ( 0, 0 ) ref -> zero-ref single-def "field V141.Item1 (fldOffset=0x0)" P-INDEP
-;* V333 tmp286 [V333,T261] ( 0, 0 ) ref -> zero-ref single-def "field V141.Item2 (fldOffset=0x8)" P-INDEP
+;* V332 tmp285 [V332,T261] ( 0, 0 ) ref -> zero-ref single-def "field V141.Item1 (fldOffset=0x0)" P-INDEP
+;* V333 tmp286 [V333,T262] ( 0, 0 ) ref -> zero-ref single-def "field V141.Item2 (fldOffset=0x8)" P-INDEP
;* V334 tmp287 [V334 ] ( 0, 0 ) ref -> zero-ref single-def "field V142.Item1 (fldOffset=0x0)" P-INDEP
;* V335 tmp288 [V335 ] ( 0, 0 ) ref -> zero-ref single-def "field V142.Item2 (fldOffset=0x8)" P-INDEP
;* V336 tmp289 [V336 ] ( 0, 0 ) byref -> zero-ref "field V240._reference (fldOffset=0x0)" P-INDEP
;* V337 tmp290 [V337 ] ( 0, 0 ) int -> zero-ref "field V240._length (fldOffset=0x8)" P-INDEP
;* V338 tmp291 [V338 ] ( 0, 0 ) byref -> zero-ref "field V242._reference (fldOffset=0x0)" P-INDEP
;* V339 tmp292 [V339 ] ( 0, 0 ) int -> zero-ref "field V242._length (fldOffset=0x8)" P-INDEP
;* V340 tmp293 [V340 ] ( 0, 0 ) byref -> zero-ref "field V246._reference (fldOffset=0x0)" P-INDEP
;* V341 tmp294 [V341 ] ( 0, 0 ) int -> zero-ref "field V246._length (fldOffset=0x8)" P-INDEP
;* V342 tmp295 [V342 ] ( 0, 0 ) byref -> zero-ref "field V249._reference (fldOffset=0x0)" P-INDEP
;* V343 tmp296 [V343 ] ( 0, 0 ) int -> zero-ref "field V249._length (fldOffset=0x8)" P-INDEP
;* V344 tmp297 [V344 ] ( 0, 0 ) byref -> zero-ref "field V251._reference (fldOffset=0x0)" P-INDEP
;* V345 tmp298 [V345 ] ( 0, 0 ) int -> zero-ref "field V251._length (fldOffset=0x8)" P-INDEP
;* V346 tmp299 [V346 ] ( 0, 0 ) byref -> zero-ref "field V255._reference (fldOffset=0x0)" P-INDEP
;* V347 tmp300 [V347 ] ( 0, 0 ) int -> zero-ref "field V255._length (fldOffset=0x8)" P-INDEP
; V348 tmp301 [V348,T140] ( 2, 2 ) ref -> rdi single-def "Field obj"
; V349 tmp302 [V349,T78] ( 3, 6 ) ref -> rdi single-def "argument with side effect"
-; V350 tmp303 [V350,T109] ( 2, 4 ) int -> rcx "argument with side effect"
+; V350 tmp303 [V350,T108] ( 2, 4 ) int -> rcx "argument with side effect"
; V351 tmp304 [V351,T141] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V352 tmp305 [V352,T142] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V353 tmp306 [V353,T79] ( 3, 6 ) ref -> rdi single-def "argument with side effect"
; V354 tmp307 [V354,T80] ( 3, 6 ) ref -> rdi single-def "argument with side effect"
; V355 tmp308 [V355,T81] ( 3, 6 ) ref -> rdi single-def "argument with side effect"
; V356 tmp309 [V356,T82] ( 3, 6 ) ref -> rdi single-def "argument with side effect"
-; V357 tmp310 [V357,T272] ( 2, 0 ) ref -> rsi single-def "argument with side effect"
-; V358 tmp311 [V358,T273] ( 2, 0 ) ref -> rsi single-def "argument with side effect"
+; V357 tmp310 [V357,T273] ( 2, 0 ) ref -> rsi single-def "argument with side effect"
+; V358 tmp311 [V358,T274] ( 2, 0 ) ref -> rsi single-def "argument with side effect"
; V359 tmp312 [V359,T179] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V360 tmp313 [V360,T180] ( 2, 2 ) ref -> r14 single-def "argument with side effect"
; V361 tmp314 [V361,T181] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V362 tmp315 [V362,T182] ( 2, 2 ) ref -> r14 single-def "argument with side effect"
; V363 tmp316 [V363,T143] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V364 tmp317 [V364,T144] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V365 tmp318 [V365,T145] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V366 tmp319 [V366,T146] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V367 tmp320 [V367,T183] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V368 tmp321 [V368,T184] ( 2, 2 ) ref -> r14 single-def "argument with side effect"
; V369 tmp322 [V369,T185] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V370 tmp323 [V370,T186] ( 2, 2 ) ref -> r14 single-def "argument with side effect"
; V371 tmp324 [V371,T187] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V372 tmp325 [V372,T188] ( 2, 2 ) ref -> r14 single-def "argument with side effect"
; V373 tmp326 [V373,T20] ( 2, 16 ) ref -> rdx "argument with side effect"
; V374 tmp327 [V374,T21] ( 2, 16 ) ref -> rax "argument with side effect"
; V375 tmp328 [V375,T50] ( 2, 8 ) ref -> rdi "argument with side effect"
; V376 tmp329 [V376,T51] ( 2, 8 ) ref -> rdx "argument with side effect"
-; V377 tmp330 [V377,T274] ( 2, 0 ) ref -> rsi "argument with side effect"
+; V377 tmp330 [V377,T275] ( 2, 0 ) ref -> rsi "argument with side effect"
; V378 tmp331 [V378,T01] ( 3, 96 ) ref -> rdi "arr expr"
;* V379 tmp332 [V379,T22] ( 0, 0 ) ref -> zero-ref "arr expr"
; V380 tmp333 [V380,T30] ( 3, 12 ) ref -> rdi "arr expr"
; V381 tmp334 [V381,T52] ( 2, 8 ) ref -> rax "argument with side effect"
; V382 tmp335 [V382,T31] ( 3, 12 ) ref -> rsi "arr expr"
; V383 tmp336 [V383,T189] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V384 tmp337 [V384,T190] ( 2, 2 ) ref -> r13 single-def "argument with side effect"
; V385 tmp338 [V385,T147] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V386 tmp339 [V386,T191] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V387 tmp340 [V387,T192] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V388 tmp341 [V388,T193] ( 2, 2 ) ref -> r15 single-def "argument with side effect"
; V389 tmp342 [V389,T194] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V390 tmp343 [V390,T195] ( 2, 2 ) ref -> r13 single-def "argument with side effect"
; V391 tmp344 [V391,T196] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V392 tmp345 [V392,T197] ( 2, 2 ) ref -> r13 single-def "argument with side effect"
; V393 tmp346 [V393,T83] ( 3, 6 ) ref -> rdi single-def "argument with side effect"
-; V394 tmp347 [V394,T105] ( 2, 4 ) ref -> rsi single-def "argument with side effect"
-; V395 tmp348 [V395,T106] ( 2, 4 ) ref -> r15 single-def "argument with side effect"
-; V396 cse0 [V396,T06] ( 3, 40 ) ref -> rdi "CSE #46: aggressive"
-; V397 cse1 [V397,T215] ( 3, 1.50) ref -> rsi "CSE #31: conservative"
-; V398 cse2 [V398,T61] ( 10, 6.50) ref -> [rbp-0x1D0] spill-single-def "CSE #11: conservative"
-; V399 cse3 [V399,T259] ( 2, 1 ) int -> rdi "CSE #03: conservative"
-; V400 cse4 [V400,T231] ( 3, 1.50) int -> r9 "CSE #60: conservative"
-; V401 cse5 [V401,T232] ( 3, 1.50) int -> r10 "CSE #61: conservative"
-; V402 cse6 [V402,T07] ( 2, 32 ) ref -> rdi "CSE #42: aggressive"
-; V403 cse7 [V403,T44] ( 4, 8 ) int -> rsi "CSE #55: conservative"
-; V404 cse8 [V404,T29] ( 4, 12 ) int -> rdi "CSE #53: conservative"
-; V405 cse9 [V405,T84] ( 3, 6 ) ref -> rdi "CSE #48: conservative"
-; V406 cse10 [V406,T85] ( 3, 6 ) ref -> rsi "CSE #56: conservative"
-; V407 cse11 [V407,T86] ( 3, 6 ) ref -> rdi "CSE #59: conservative"
-; V408 cse12 [V408,T216] ( 3, 1.50) ref -> rdi "CSE #13: conservative"
-; V409 cse13 [V409,T217] ( 3, 1.50) ref -> rdi "CSE #14: conservative"
-; V410 cse14 [V410,T218] ( 3, 1.50) ref -> rdi "CSE #15: conservative"
-; V411 cse15 [V411,T219] ( 3, 1.50) ref -> rdi "CSE #16: conservative"
-; V412 cse16 [V412,T220] ( 3, 1.50) ref -> rdi "CSE #17: conservative"
-; V413 cse17 [V413,T221] ( 3, 1.50) ref -> rdi "CSE #20: conservative"
-; V414 cse18 [V414,T222] ( 3, 1.50) ref -> rdi "CSE #21: conservative"
-; V415 cse19 [V415,T223] ( 3, 1.50) ref -> rdi "CSE #25: conservative"
-; V416 cse20 [V416,T224] ( 3, 1.50) ref -> rdi "CSE #26: conservative"
-; V417 cse21 [V417,T225] ( 3, 1.50) ref -> rdi "CSE #27: conservative"
-; V418 cse22 [V418,T226] ( 3, 1.50) ref -> rdi "CSE #28: conservative"
-; V419 cse23 [V419,T227] ( 3, 1.50) ref -> rdi "CSE #29: conservative"
-; V420 cse24 [V420,T228] ( 3, 1.50) ref -> rdi "CSE #33: conservative"
-; V421 cse25 [V421,T229] ( 3, 1.50) ref -> rdi "CSE #63: conservative"
-; V422 cse26 [V422,T230] ( 3, 1.50) ref -> rdi "CSE #64: conservative"
-; V423 cse27 [V423,T23] ( 10, 15 ) ref -> r14 "CSE #32: moderate"
-; V424 rat0 [V424,T09] ( 8, 24.50) long -> [rbp-0xA8] "Widened IV V39"
-; V425 rat1 [V425,T03] ( 6, 82 ) long -> [rbp-0xB0] "Widened IV V44"
+; V394 tmp347 [V394,T104] ( 2, 4 ) ref -> rsi single-def "argument with side effect"
+; V395 tmp348 [V395,T105] ( 2, 4 ) ref -> r15 single-def "argument with side effect"
+; V396 cse0 [V396,T06] ( 3, 40 ) ref -> rdi "CSE #45: aggressive"
+; V397 cse1 [V397,T215] ( 3, 1.50) ref -> rsi "CSE #30: conservative"
+; V398 cse2 [V398,T61] ( 10, 6.50) ref -> [rbp-0x1D0] spill-single-def "CSE #10: conservative"
+; V399 cse3 [V399,T260] ( 2, 1 ) int -> rdi "CSE #02: conservative"
+; V400 cse4 [V400,T232] ( 3, 1.50) int -> r9 "CSE #59: conservative"
+; V401 cse5 [V401,T233] ( 3, 1.50) int -> r10 "CSE #60: conservative"
+; V402 cse6 [V402,T07] ( 2, 32 ) ref -> rdi "CSE #41: aggressive"
+; V403 cse7 [V403,T44] ( 4, 8 ) int -> rsi "CSE #54: conservative"
+; V404 cse8 [V404,T29] ( 4, 12 ) int -> rdi "CSE #52: conservative"
+; V405 cse9 [V405,T84] ( 3, 6 ) ref -> rdi "CSE #47: conservative"
+; V406 cse10 [V406,T85] ( 3, 6 ) ref -> rsi "CSE #55: conservative"
+; V407 cse11 [V407,T86] ( 3, 6 ) ref -> rdi "CSE #58: conservative"
+; V408 cse12 [V408,T216] ( 3, 1.50) ref -> rdi "CSE #12: conservative"
+; V409 cse13 [V409,T217] ( 3, 1.50) ref -> rdi "CSE #13: conservative"
+; V410 cse14 [V410,T218] ( 3, 1.50) ref -> rdi "CSE #14: conservative"
+; V411 cse15 [V411,T219] ( 3, 1.50) ref -> rdi "CSE #15: conservative"
+; V412 cse16 [V412,T220] ( 3, 1.50) ref -> rdi "CSE #16: conservative"
+; V413 cse17 [V413,T221] ( 3, 1.50) ref -> rdi "CSE #19: conservative"
+; V414 cse18 [V414,T222] ( 3, 1.50) ref -> rdi "CSE #20: conservative"
+; V415 cse19 [V415,T223] ( 3, 1.50) ref -> rdi "CSE #24: conservative"
+; V416 cse20 [V416,T224] ( 3, 1.50) ref -> rdi "CSE #25: conservative"
+; V417 cse21 [V417,T225] ( 3, 1.50) ref -> rdi "CSE #26: conservative"
+; V418 cse22 [V418,T226] ( 3, 1.50) ref -> rdi "CSE #27: conservative"
+; V419 cse23 [V419,T227] ( 3, 1.50) ref -> rdi "CSE #28: conservative"
+; V420 cse24 [V420,T228] ( 3, 1.50) ref -> rdi "CSE #32: conservative"
+; V421 cse25 [V421,T229] ( 3, 1.50) ref -> rdi "CSE #62: conservative"
+; V422 cse26 [V422,T230] ( 3, 1.50) ref -> rdi "CSE #63: conservative"
+; V423 cse27 [V423,T231] ( 3, 1.50) ref -> rdi "CSE #64: conservative"
+; V424 cse28 [V424,T23] ( 10, 15 ) ref -> r14 "CSE #31: moderate"
+; V425 rat0 [V425,T09] ( 8, 24.50) long -> [rbp-0xA8] "Widened IV V39"
+; V426 rat1 [V426,T03] ( 6, 82 ) long -> [rbp-0xB0] "Widened IV V44"
; TEMP_01 byref -> [rbp-0x1D8]
;
; Lcl frame size = 456
G_M61347_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 456
lea rbp, [rsp+0x1F0]
xor eax, eax
mov qword ptr [rbp-0x1D8], rax
vxorps xmm8, xmm8, xmm8
vmovdqa xmmword ptr [rbp-0x1D0], xmm8
vmovdqa xmmword ptr [rbp-0x1C0], xmm8
mov rax, -384
vmovdqa xmmword ptr [rbp+rax-0x30], xmm8
vmovdqa xmmword ptr [rbp+rax-0x20], xmm8
vmovdqa xmmword ptr [rbp+rax-0x10], xmm8
add rax, 48
jne SHORT -5 instr
mov rbx, rdi
mov r15, rsi
;; size=95 bbWeight=1 PerfScore 20.33
G_M61347_IG02:
mov rdi, gword ptr [rbx+0x08]
cmp byte ptr [rdi], dil
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
jne SHORT G_M61347_IG04
;; size=27 bbWeight=1 PerfScore 9.75
G_M61347_IG03:
xor r14, r14
jmp SHORT G_M61347_IG05
;; size=5 bbWeight=0.50 PerfScore 1.12
G_M61347_IG04:
mov r14, gword ptr [rax]
;; size=3 bbWeight=0.50 PerfScore 1.00
G_M61347_IG05:
mov rdi, gword ptr [r15+0x10]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.TypeDesc:get_CSharpName():System.String:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.TypeDesc:get_CSharpName():System.String:this
mov r13, rax
mov rdi, 0xD1FFAB1E ; System.Xml.Serialization.CodeGenerator
call CORINFO_HELP_NEWSFAST
mov r12, rax
mov rsi, gword ptr [rbx+0x68]
mov rdi, r12
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:.ctor(System.Reflection.Emit.TypeBuilder):this
call [rax]System.Xml.Serialization.CodeGenerator:.ctor(System.Reflection.Emit.TypeBuilder):this
lea rdi, bword ptr [rbx+0x70]
mov rsi, r12
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Type]
call CORINFO_HELP_NEWSFAST
mov r12, rax
mov rdi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rdi]
lea rdi, bword ptr [r12+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.String]
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0x158], rax
- mov rdi, 0xD1FFAB1E ; global ptr
- test byte ptr [rdi], 1
- je G_M61347_IG126
- ;; size=152 bbWeight=1 PerfScore 29.00
-G_M61347_IG06:
- mov rdi, 0xD1FFAB1E ; data for System.Collections.Generic.List`1[System.String]:s_emptyArray
+ mov rdi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rdi]
lea rdi, bword ptr [rax+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [r15+0x10]
test byte ptr [rdi+0x64], 2
- je G_M61347_IG11
- ;; size=36 bbWeight=1 PerfScore 9.75
-G_M61347_IG07:
+ je G_M61347_IG10
+ ;; size=169 bbWeight=1 PerfScore 34.50
+G_M61347_IG06:
inc dword ptr [r12+0x14]
mov rdi, gword ptr [r12+0x08]
mov eax, dword ptr [r12+0x10]
cmp dword ptr [rdi+0x08], eax
- ja SHORT G_M61347_IG08
+ ja SHORT G_M61347_IG07
mov rdi, r12
mov rsi, 0xD1FFAB1E ; 'System.Boolean'
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M61347_IG09
+ jmp SHORT G_M61347_IG08
;; size=47 bbWeight=0.50 PerfScore 8.38
-G_M61347_IG08:
+G_M61347_IG07:
lea esi, [rax+0x01]
mov dword ptr [r12+0x10], esi
movsxd rsi, eax
mov rdx, 0xD1FFAB1E ; 'System.Boolean'
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
;; size=33 bbWeight=0.50 PerfScore 2.62
-G_M61347_IG09:
+G_M61347_IG08:
mov rax, gword ptr [rbp-0x158]
inc dword ptr [rax+0x14]
mov rcx, gword ptr [rax+0x08]
mov edx, dword ptr [rax+0x10]
mov edi, dword ptr [rcx+0x08]
cmp edi, edx
- ja SHORT G_M61347_IG10
+ ja SHORT G_M61347_IG09
mov rdi, rax
mov rsi, 0xD1FFAB1E ; 'isNullable'
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rcx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M61347_IG11
+ jmp SHORT G_M61347_IG10
;; size=51 bbWeight=0.50 PerfScore 8.50
-G_M61347_IG10:
+G_M61347_IG09:
lea edi, [rdx+0x01]
mov dword ptr [rax+0x10], edi
mov edi, edx
mov rsi, 0xD1FFAB1E ; 'isNullable'
mov gword ptr [rcx+8*rdi+0x10], rsi
;; size=23 bbWeight=0.50 PerfScore 1.50
-G_M61347_IG11:
+G_M61347_IG10:
inc dword ptr [r12+0x14]
mov rdi, gword ptr [r12+0x08]
mov ecx, dword ptr [r12+0x10]
cmp dword ptr [rdi+0x08], ecx
- ja SHORT G_M61347_IG13
+ ja SHORT G_M61347_IG12
;; size=20 bbWeight=1 PerfScore 11.00
-G_M61347_IG12:
+G_M61347_IG11:
mov rdi, r12
mov rsi, 0xD1FFAB1E ; 'System.Boolean'
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rcx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M61347_IG14
+ jmp SHORT G_M61347_IG13
;; size=27 bbWeight=0.50 PerfScore 2.88
-G_M61347_IG13:
+G_M61347_IG12:
lea esi, [rcx+0x01]
mov dword ptr [r12+0x10], esi
movsxd rsi, ecx
mov rdx, 0xD1FFAB1E ; 'System.Boolean'
mov rcx, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rcx]CORINFO_HELP_ARRADDR_ST
;; size=33 bbWeight=0.50 PerfScore 2.62
-G_M61347_IG14:
+G_M61347_IG13:
mov rax, gword ptr [rbp-0x158]
inc dword ptr [rax+0x14]
mov rcx, gword ptr [rax+0x08]
mov edx, dword ptr [rax+0x10]
cmp dword ptr [rcx+0x08], edx
- ja SHORT G_M61347_IG16
+ ja SHORT G_M61347_IG15
;; size=22 bbWeight=1 PerfScore 12.00
-G_M61347_IG15:
+G_M61347_IG14:
mov rdi, rax
mov rsi, 0xD1FFAB1E ; 'checkType'
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rcx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M61347_IG17
+ jmp SHORT G_M61347_IG16
;; size=27 bbWeight=0.50 PerfScore 2.88
-G_M61347_IG16:
+G_M61347_IG15:
lea edi, [rdx+0x01]
mov dword ptr [rax+0x10], edi
mov edi, edx
mov rsi, 0xD1FFAB1E ; 'checkType'
mov gword ptr [rcx+8*rdi+0x10], rsi
;; size=23 bbWeight=0.50 PerfScore 1.50
-G_M61347_IG17:
+G_M61347_IG16:
mov rcx, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x160], rcx
mov rdi, gword ptr [r15+0x10]
cmp byte ptr [rdi], dil
mov rdi, gword ptr [rbx+0x10]
cmp byte ptr [rdi], dil
mov rsi, r14
mov rdx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rdx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M61347_IG127
+ je G_M61347_IG125
mov r14, gword ptr [rax]
mov rdi, r12
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
call [rax]System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
mov r12, rax
mov rdi, gword ptr [rbp-0x158]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
call [rax]System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
mov gword ptr [rbp-0x190], rax
mov rcx, gword ptr [rbp-0x160]
cmp byte ptr [rcx], cl
mov rsi, gword ptr [r14+0x08]
lea rdi, bword ptr [rcx+0x10]
call CORINFO_HELP_ASSIGN_REF
mov r14, gword ptr [rbp-0x160]
mov rdi, gword ptr [r14+0x10]
mov esi, 64
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x70]
call [rax+0x08]System.Reflection.Emit.MethodBuilder:GetILGeneratorCore(int):System.Reflection.Emit.ILGenerator:this
lea rdi, bword ptr [r14+0x18]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [r14+0x10]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x50]
call [rax+0x20]System.Reflection.MethodBase:get_Attributes():int:this
test al, 16
setne cl
movzx rcx, cl
mov rsi, r12
mov rdx, gword ptr [rbp-0x190]
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InitILGeneration(System.Type[],System.String[],ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InitILGeneration(System.Type[],System.String[],ubyte):this
mov r14, gword ptr [rbx+0x70]
mov rdi, gword ptr [r14+0x30]
;; size=211 bbWeight=1 PerfScore 67.50
-G_M61347_IG18:
+G_M61347_IG17:
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'System.Xml.XmlQualifiedName'
mov rdx, 0xD1FFAB1E ; 'xsiType'
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.ValueTuple`2[System.__Canon,System.__Canon],System.__Canon]:FindValue(System.ValueTuple`2[System.__Canon,System.__Canon]):byref:this
call [rax]System.Collections.Generic.Dictionary`2[System.ValueTuple`2[System.__Canon,System.__Canon],System.__Canon]:FindValue(System.ValueTuple`2[System.__Canon,System.__Canon]):byref:this
test rax, rax
- jne SHORT G_M61347_IG20
+ jne SHORT G_M61347_IG19
;; size=40 bbWeight=1 PerfScore 8.00
-G_M61347_IG19:
+G_M61347_IG18:
mov rdi, gword ptr [r14+0x18]
mov rsi, 0xD1FFAB1E ; 'System.Xml.XmlQualifiedName'
xor edx, edx
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x60]
call [rax+0x20]System.Reflection.Emit.ILGenerator:DeclareLocal(System.Type,ubyte):System.Reflection.Emit.LocalBuilder:this
mov r12, rax
- jmp SHORT G_M61347_IG21
+ jmp SHORT G_M61347_IG20
;; size=31 bbWeight=0.50 PerfScore 5.88
-G_M61347_IG20:
+G_M61347_IG19:
mov r12, gword ptr [rax]
mov rdi, r12
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Queue`1[System.__Canon]:Dequeue():System.__Canon:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Queue`1[System.__Canon]:Dequeue():System.__Canon:this
mov gword ptr [rbp-0x198], rax
cmp dword ptr [r12+0x18], 0
- jne G_M61347_IG30
+ jne G_M61347_IG29
mov rsi, 0xD1FFAB1E ; 'System.Xml.XmlQualifiedName'
mov rdx, 0xD1FFAB1E ; 'xsiType'
mov rdi, gword ptr [r14+0x30]
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.ValueTuple`2[System.__Canon,System.__Canon],System.__Canon]:Remove(System.ValueTuple`2[System.__Canon,System.__Canon]):ubyte:this
cmp dword ptr [rdi], edi
call [rcx]System.Collections.Generic.Dictionary`2[System.ValueTuple`2[System.__Canon,System.__Canon],System.__Canon]:Remove(System.ValueTuple`2[System.__Canon,System.__Canon]):ubyte:this
mov r12, gword ptr [rbp-0x198]
;; size=84 bbWeight=0.50 PerfScore 11.62
-G_M61347_IG21:
+G_M61347_IG20:
mov rdi, gword ptr [r14+0x28]
mov rdi, gword ptr [rdi+0x10]
cmp byte ptr [rdi], dil
mov rdx, r12
mov rsi, 0xD1FFAB1E ; 'xsiType'
mov ecx, 1
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
mov r14, gword ptr [rbx+0x70]
cmp byte ptr [r14], r14b
lea rcx, [rbp-0x68]
mov rdi, r14
mov rsi, 0xD1FFAB1E ; 'System.Boolean'
mov rdx, 0xD1FFAB1E ; 'isNull'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
call [rax]System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
test eax, eax
- jne SHORT G_M61347_IG23
+ jne SHORT G_M61347_IG22
;; size=91 bbWeight=1 PerfScore 21.75
-G_M61347_IG22:
+G_M61347_IG21:
mov rdi, gword ptr [r14+0x18]
mov rsi, 0xD1FFAB1E ; 'System.Boolean'
xor edx, edx
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x60]
call [rax+0x20]System.Reflection.Emit.ILGenerator:DeclareLocal(System.Type,ubyte):System.Reflection.Emit.LocalBuilder:this
mov gword ptr [rbp-0x68], rax
;; size=30 bbWeight=0.50 PerfScore 5.25
-G_M61347_IG23:
+G_M61347_IG22:
mov rdi, gword ptr [r14+0x28]
mov rdx, gword ptr [rbp-0x68]
mov rdi, gword ptr [rdi+0x10]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'isNull'
mov ecx, 1
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
mov r14, gword ptr [rbp-0x68]
xor r9, r9
mov gword ptr [rbp-0x68], r9
mov r9, 0xD1FFAB1E ; const ptr
mov rax, gword ptr [r9]
mov r9, rax
mov gword ptr [rbp-0x1D0], r9
mov rdi, r9
xor rsi, rsi
mov gword ptr [rsp], rsi
mov r9, rdi
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'GetXsiType'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov gword ptr [rbp-0xB8], rax
mov r9, gword ptr [rbp-0x1D0]
mov rdi, r9
xor rsi, rsi
mov gword ptr [rsp], rsi
mov r9, rdi
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'ReadNull'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov r10, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [r10]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov gword ptr [rbp-0xC0], rax
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x58]
call [rcx+0x28]System.Reflection.Emit.ILGenerator:DefineLabel():System.Reflection.Emit.Label:this
mov dword ptr [rbp-0x9C], eax
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x58]
call [rcx+0x28]System.Reflection.Emit.ILGenerator:DefineLabel():System.Reflection.Emit.Label:this
mov dword ptr [rbp-0xA0], eax
mov rcx, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x1A0], rcx
;; size=271 bbWeight=1 PerfScore 60.00
-G_M61347_IG24:
+G_M61347_IG23:
mov rdi, gword ptr [rcx+0x20]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'checkType'
mov rdx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rdx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M61347_IG129
+ je G_M61347_IG127
mov rsi, gword ptr [rax]
mov esi, dword ptr [rsi+0x18]
mov rdi, gword ptr [rbp-0x1A0]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0x9C]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Brtrue(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Brtrue(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
xor rsi, rsi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Load(System.Object):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Load(System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0xA0]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br_S(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br_S(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov esi, dword ptr [rbp-0x9C]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xB8]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
;; size=198 bbWeight=1 PerfScore 71.75
-G_M61347_IG25:
+G_M61347_IG24:
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov esi, dword ptr [rbp-0xA0]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r12
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldc(ubyte):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [r15+0x10]
test byte ptr [rdi+0x64], 2
- je G_M61347_IG27
+ je G_M61347_IG26
;; size=102 bbWeight=1 PerfScore 46.50
-G_M61347_IG26:
+G_M61347_IG25:
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x1A8], rax
mov rdi, gword ptr [rax+0x20]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'isNullable'
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rcx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M61347_IG128
+ je G_M61347_IG126
mov rsi, gword ptr [rax]
mov esi, dword ptr [rsi+0x18]
mov rdi, gword ptr [rbp-0x1A8]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
cmp byte ptr [rdi], dil
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xC0]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:EndIf():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:EndIf():this
;; size=179 bbWeight=0.50 PerfScore 32.00
-G_M61347_IG27:
+G_M61347_IG26:
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x1B0], rax
mov rdi, gword ptr [rax+0x20]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'checkType'
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rcx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M61347_IG129
+ je G_M61347_IG127
mov rsi, gword ptr [rax]
mov esi, dword ptr [rsi+0x18]
mov rdi, gword ptr [rbp-0x1B0]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
cmp byte ptr [rdi], dil
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
mov rdi, gword ptr [r15+0x10]
cmp dword ptr [rdi+0x60], 0
- jne G_M61347_IG32
+ jne G_M61347_IG31
;; size=109 bbWeight=1 PerfScore 35.50
-G_M61347_IG28:
+G_M61347_IG27:
mov rdi, gword ptr [rbx+0x70]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
cmp byte ptr [rdi], dil
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r12
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
xor rsi, rsi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Load(System.Object):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Load(System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov esi, 4
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:If(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:If(int):this
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 1
call CORINFO_HELP_NEWARR_1_OBJ
mov r14, rax
mov rdi, r12
mov rax, qword ptr [r12]
mov rax, qword ptr [rax+0x40]
call [rax+0x20]System.Reflection.LocalVariableInfo:get_LocalType():System.Type:this
lea rdi, bword ptr [r14+0x10]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
xor r9, r9
mov gword ptr [rsp], r9
mov r9, r14
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'ReadTypedNull'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
;; size=208 bbWeight=0.50 PerfScore 28.12
-G_M61347_IG29:
+G_M61347_IG28:
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov r14, rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r12
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov r14, rdi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rdi+0x74]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Else():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Else():this
mov rdi, gword ptr [r15+0x10]
test byte ptr [rdi+0x64], 2
- jne SHORT G_M61347_IG31
- jmp G_M61347_IG132
+ jne SHORT G_M61347_IG30
+ jmp G_M61347_IG130
;; size=158 bbWeight=0.50 PerfScore 32.25
-G_M61347_IG30:
+G_M61347_IG29:
mov r12, gword ptr [rbp-0x198]
- jmp G_M61347_IG21
+ jmp G_M61347_IG20
;; size=12 bbWeight=0.25 PerfScore 0.75
-G_M61347_IG31:
+G_M61347_IG30:
mov rdi, gword ptr [rbx+0x70]
xor rsi, rsi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Load(System.Object):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Load(System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov r14, rdi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rdi+0x74]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:EndIf():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:EndIf():this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:EndIf():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:EndIf():this
;; size=114 bbWeight=0.50 PerfScore 22.25
-G_M61347_IG32:
+G_M61347_IG31:
mov r14, gword ptr [rbx+0x70]
mov rax, gword ptr [r14+0x28]
mov gword ptr [rbp-0x1B8], rax
mov rdi, gword ptr [rax+0x10]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'xsiType'
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rcx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- jne SHORT G_M61347_IG35
+ jne SHORT G_M61347_IG34
;; size=49 bbWeight=1 PerfScore 14.75
-G_M61347_IG33:
+G_M61347_IG32:
xor rdi, rdi
mov gword ptr [rbp-0x70], rdi
mov rdi, gword ptr [rbp-0x1B8]
mov rdi, gword ptr [rdi+0x08]
test rdi, rdi
- jne SHORT G_M61347_IG34
+ jne SHORT G_M61347_IG33
xor rdi, rdi
mov gword ptr [rbp-0x70], rdi
- jmp SHORT G_M61347_IG36
+ jmp SHORT G_M61347_IG35
;; size=30 bbWeight=0.50 PerfScore 4.38
-G_M61347_IG34:
+G_M61347_IG33:
lea rdx, [rbp-0x70]
mov rsi, 0xD1FFAB1E ; 'xsiType'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.LocalScope:TryGetValue(System.String,byref):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.LocalScope:TryGetValue(System.String,byref):ubyte:this
- jmp SHORT G_M61347_IG36
+ jmp SHORT G_M61347_IG35
;; size=30 bbWeight=0.50 PerfScore 4.50
-G_M61347_IG35:
+G_M61347_IG34:
mov rdi, gword ptr [rax]
mov gword ptr [rbp-0x70], rdi
;; size=7 bbWeight=0.50 PerfScore 1.50
-G_M61347_IG36:
+G_M61347_IG35:
mov rsi, gword ptr [rbp-0x70]
xor rdi, rdi
mov gword ptr [rbp-0x70], rdi
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
xor rsi, rsi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Load(System.Object):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Load(System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ceq():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ceq():this
mov rdi, gword ptr [r15+0x10]
cmp dword ptr [rdi+0x60], 0
- je G_M61347_IG38
+ je G_M61347_IG37
;; size=77 bbWeight=1 PerfScore 28.50
-G_M61347_IG37:
+G_M61347_IG36:
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x28]System.Reflection.Emit.ILGenerator:DefineLabel():System.Reflection.Emit.Label:this
mov r14d, eax
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x28]System.Reflection.Emit.ILGenerator:DefineLabel():System.Reflection.Emit.Label:this
mov dword ptr [rbp-0xA0], eax
mov rdi, gword ptr [rbx+0x70]
mov esi, r14d
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Brtrue(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Serialization.CodeGenerator:Brtrue(System.Reflection.Emit.Label):this
mov rdx, gword ptr [r15+0x20]
mov rcx, gword ptr [r15+0x18]
mov rdi, rbx
mov rsi, 0xD1FFAB1E ; 'xsiType'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteQNameEqual(System.String,System.String,System.String):this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteQNameEqual(System.String,System.String,System.String):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0xA0]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br_S(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br_S(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov esi, r14d
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
mov esi, 1
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldc(ubyte):this
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov esi, dword ptr [rbp-0xA0]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
;; size=191 bbWeight=0.50 PerfScore 40.25
-G_M61347_IG38:
+G_M61347_IG37:
mov rdi, gword ptr [rbx+0x70]
cmp byte ptr [rdi], dil
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
mov rdi, gword ptr [r15+0x10]
cmp dword ptr [rdi+0x60], 0
- jne G_M61347_IG41
+ jne G_M61347_IG40
;; size=35 bbWeight=1 PerfScore 14.50
-G_M61347_IG39:
+G_M61347_IG38:
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 2
call CORINFO_HELP_NEWARR_1_OBJ
mov r8, 0xD1FFAB1E ; 'System.String'
mov gword ptr [rax+0x10], r8
mov gword ptr [rax+0x18], r8
mov r8, rax
mov rdi, 0xD1FFAB1E ; 'System.Xml.XmlQualifiedName'
mov esi, 52
xor rdx, rdx
mov ecx, 3
xor r9, r9
mov rax, 0xD1FFAB1E ; code for System.Type:GetConstructor(int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.ConstructorInfo:this
call [rax]System.Type:GetConstructor(int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.ConstructorInfo:this
mov r14, rax
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 1
call CORINFO_HELP_NEWARR_1_OBJ
mov r9, 0xD1FFAB1E ; 'System.Xml.XmlQualifiedName'
mov gword ptr [rax+0x10], r9
xor r9, r9
mov gword ptr [rsp], r9
mov r9, rax
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'ReadTypedPrimitive'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov gword ptr [rbp-0xC8], rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, 0xD1FFAB1E ; 'anyType'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, 0xD1FFAB1E ; 'http://www.w3.org/2001/XMLSchema'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
mov rdi, gword ptr [rbx+0x70]
;; size=257 bbWeight=0.50 PerfScore 23.00
-G_M61347_IG40:
+G_M61347_IG39:
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:New(System.Reflection.ConstructorInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:New(System.Reflection.ConstructorInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xC8]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov r14, rdi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rdi+0x74]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
;; size=104 bbWeight=0.50 PerfScore 20.62
-G_M61347_IG41:
+G_M61347_IG40:
mov rdx, gword ptr [r15+0x10]
cmp dword ptr [rdx+0x60], 0
setne dl
movzx rdx, dl
mov rdi, rbx
mov rsi, r15
mov rcx, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteDerivedTypes(System.Xml.Serialization.StructMapping,ubyte,System.String):this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteDerivedTypes(System.Xml.Serialization.StructMapping,ubyte,System.String):this
mov rdi, gword ptr [r15+0x10]
cmp dword ptr [rdi+0x60], 0
- jne SHORT G_M61347_IG43
+ jne SHORT G_M61347_IG42
;; size=45 bbWeight=1 PerfScore 16.25
-G_M61347_IG42:
+G_M61347_IG41:
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteEnumAndArrayTypes():this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteEnumAndArrayTypes():this
;; size=15 bbWeight=0.50 PerfScore 1.75
-G_M61347_IG43:
+G_M61347_IG42:
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Else():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Else():this
mov rdi, gword ptr [r15+0x10]
cmp dword ptr [rdi+0x60], 0
- je G_M61347_IG45
+ je G_M61347_IG44
;; size=32 bbWeight=1 PerfScore 14.25
-G_M61347_IG44:
+G_M61347_IG43:
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 1
call CORINFO_HELP_NEWARR_1_OBJ
mov r9, 0xD1FFAB1E ; 'System.Xml.XmlQualifiedName'
mov gword ptr [rax+0x10], r9
xor r9, r9
mov gword ptr [rsp], r9
mov r9, rax
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'CreateUnknownTypeException'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
- mov r13, rax
+ mov r14, rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r12
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
- mov rsi, r13
+ mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Throw():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Throw():this
- jmp G_M61347_IG47
+ jmp G_M61347_IG46
;; size=177 bbWeight=0.50 PerfScore 22.38
-G_M61347_IG45:
+G_M61347_IG44:
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 1
call CORINFO_HELP_NEWARR_1_OBJ
mov r14, rax
mov rdi, r12
mov rax, qword ptr [r12]
mov rax, qword ptr [rax+0x40]
call [rax+0x20]System.Reflection.LocalVariableInfo:get_LocalType():System.Type:this
lea rdi, bword ptr [r14+0x10]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
xor r9, r9
mov gword ptr [rsp], r9
mov r9, r14
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'ReadTypedPrimitive'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov r14, rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r12
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov r14, rdi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
;; size=208 bbWeight=0.50 PerfScore 27.38
-G_M61347_IG46:
+G_M61347_IG45:
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rdi+0x74]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
;; size=23 bbWeight=0.50 PerfScore 6.62
-G_M61347_IG47:
+G_M61347_IG46:
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:EndIf():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:EndIf():this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:EndIf():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:EndIf():this
mov rdi, gword ptr [r15+0x10]
test byte ptr [rdi+0x64], 2
- je G_M61347_IG52
+ je G_M61347_IG51
;; size=50 bbWeight=1 PerfScore 22.50
-G_M61347_IG48:
+G_M61347_IG47:
mov r14, gword ptr [rbx+0x70]
mov r13, gword ptr [r14+0x28]
mov rdi, gword ptr [r13+0x10]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'isNull'
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- jne SHORT G_M61347_IG50
+ jne SHORT G_M61347_IG49
xor rdi, rdi
mov gword ptr [rbp-0x78], rdi
mov rdi, gword ptr [r13+0x08]
test rdi, rdi
- jne SHORT G_M61347_IG49
+ jne SHORT G_M61347_IG48
xor rdi, rdi
mov gword ptr [rbp-0x78], rdi
- jmp SHORT G_M61347_IG51
+ jmp SHORT G_M61347_IG50
;; size=65 bbWeight=0.50 PerfScore 10.75
-G_M61347_IG49:
+G_M61347_IG48:
lea rdx, [rbp-0x78]
mov rsi, 0xD1FFAB1E ; 'isNull'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.LocalScope:TryGetValue(System.String,byref):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.LocalScope:TryGetValue(System.String,byref):ubyte:this
- jmp SHORT G_M61347_IG51
+ jmp SHORT G_M61347_IG50
;; size=30 bbWeight=0.50 PerfScore 4.50
-G_M61347_IG50:
+G_M61347_IG49:
mov rdi, gword ptr [rax]
mov gword ptr [rbp-0x78], rdi
;; size=7 bbWeight=0.50 PerfScore 1.50
-G_M61347_IG51:
+G_M61347_IG50:
mov rsi, gword ptr [rbp-0x78]
xor rdi, rdi
mov gword ptr [rbp-0x78], rdi
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
cmp byte ptr [rdi], dil
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
mov rdi, gword ptr [rbx+0x70]
xor rsi, rsi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Load(System.Object):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Load(System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov r14, rdi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rdi+0x74]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:EndIf():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:EndIf():this
;; size=146 bbWeight=0.50 PerfScore 28.25
-G_M61347_IG52:
+G_M61347_IG51:
mov rsi, gword ptr [r15+0x10]
test byte ptr [rsi+0x64], 1
- jne G_M61347_IG123
+ jne G_M61347_IG122
;; size=14 bbWeight=1 PerfScore 6.00
-G_M61347_IG53:
+G_M61347_IG52:
mov rsi, gword ptr [r15+0x10]
mov rsi, gword ptr [rsi+0x40]
test rsi, rsi
- je G_M61347_IG54
+ je G_M61347_IG53
mov rdi, 0xD1FFAB1E ; 'System.Xml.Schema.XmlSchemaObject'
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:IsAssignableFrom(System.Type):ubyte:this
call [rax]System.RuntimeType:IsAssignableFrom(System.Type):ubyte:this
test eax, eax
- je G_M61347_IG54
+ je G_M61347_IG53
mov r9, 0xD1FFAB1E ; const ptr
mov r9, gword ptr [r9]
xor rdi, rdi
mov gword ptr [rsp], rdi
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'set_DecodeName'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov r14, rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(ubyte):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldc(ubyte):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
;; size=175 bbWeight=0.50 PerfScore 21.88
-G_M61347_IG54:
+G_M61347_IG53:
mov rdi, rbx
mov rsi, r15
mov r14, 0xD1FFAB1E ; 'o'
mov rdx, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteCreateMapping(System.Xml.Serialization.TypeMapping,System.String):this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteCreateMapping(System.Xml.Serialization.TypeMapping,System.String):this
mov rdi, gword ptr [rbx+0x70]
mov r13, gword ptr [rdi+0x28]
mov rdi, gword ptr [r13+0x10]
cmp byte ptr [rdi], dil
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- jne SHORT G_M61347_IG56
+ jne SHORT G_M61347_IG55
xor rdi, rdi
mov gword ptr [rbp-0x80], rdi
mov rdi, gword ptr [r13+0x08]
test rdi, rdi
- jne SHORT G_M61347_IG55
+ jne SHORT G_M61347_IG54
xor rdi, rdi
mov gword ptr [rbp-0x80], rdi
- jmp SHORT G_M61347_IG57
+ jmp SHORT G_M61347_IG56
;; size=89 bbWeight=0.50 PerfScore 12.88
-G_M61347_IG55:
+G_M61347_IG54:
lea rdx, [rbp-0x80]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.LocalScope:TryGetValue(System.String,byref):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.LocalScope:TryGetValue(System.String,byref):ubyte:this
- jmp SHORT G_M61347_IG57
+ jmp SHORT G_M61347_IG56
;; size=23 bbWeight=0.50 PerfScore 4.50
-G_M61347_IG56:
+G_M61347_IG55:
mov rdi, gword ptr [rax]
mov gword ptr [rbp-0x80], rdi
;; size=7 bbWeight=0.50 PerfScore 1.50
-G_M61347_IG57:
+G_M61347_IG56:
mov r13, gword ptr [rbp-0x80]
xor rdi, rdi
mov gword ptr [rbp-0x80], rdi
mov gword ptr [rbp-0xD0], r13
mov r12, gword ptr [rbx+0x20]
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.TypeScope:GetSettableMembers(System.Xml.Serialization.StructMapping):System.Xml.Serialization.MemberMapping[]
call [rax]System.Xml.Serialization.TypeScope:GetSettableMembers(System.Xml.Serialization.StructMapping):System.Xml.Serialization.MemberMapping[]
mov gword ptr [rbp-0x1C0], rax
mov rdi, r15
mov rsi, rax
mov rdx, r12
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.TypeScope:PopulateMemberInfos(System.Xml.Serialization.StructMapping,System.Xml.Serialization.MemberMapping[],System.Collections.Generic.Dictionary`2[System.String,System.Reflection.MemberInfo])
call [rcx]System.Xml.Serialization.TypeScope:PopulateMemberInfos(System.Xml.Serialization.StructMapping,System.Xml.Serialization.MemberMapping[],System.Collections.Generic.Dictionary`2[System.String,System.Reflection.MemberInfo])
mov r12, gword ptr [rbp-0x1C0]
xor rax, rax
mov gword ptr [rbp-0xD8], rax
xor rcx, rcx
mov gword ptr [rbp-0xE0], rcx
xor rdx, rdx
mov gword ptr [rbp-0xE8], rdx
mov rdi, r15
mov rsi, 0xD1FFAB1E ; code for System.Xml.Serialization.StructMapping:HasExplicitSequence():ubyte:this
call [rsi]System.Xml.Serialization.StructMapping:HasExplicitSequence():ubyte:this
mov dword ptr [rbp-0x2C], eax
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0x168], rax
mov esi, dword ptr [r12+0x08]
mov rdi, rax
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor(int):this
call [rcx]System.Collections.Generic.List`1[System.__Canon]:.ctor(int):this
mov rax, gword ptr [rbp-0x168]
mov gword ptr [rbp-0xF0], rax
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0x170], rax
mov esi, dword ptr [r12+0x08]
mov rdi, rax
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor(int):this
call [rcx]System.Collections.Generic.List`1[System.__Canon]:.ctor(int):this
mov rax, gword ptr [rbp-0x170]
mov gword ptr [rbp-0xF8], rax
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Xml.Serialization.XmlSerializationReaderILGen+Member]
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0x178], rax
;; size=250 bbWeight=0.50 PerfScore 22.38
-G_M61347_IG58:
+G_M61347_IG57:
mov esi, dword ptr [r12+0x08]
mov rdi, rax
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:.ctor(int):this
call [rcx]System.Collections.Generic.List`1[System.__Canon]:.ctor(int):this
mov rax, gword ptr [rbp-0x178]
mov gword ptr [rbp-0x100], rax
xor ecx, ecx
cmp dword ptr [r12+0x08], 0
mov r13, gword ptr [rbp-0xD0]
- jle G_M61347_IG101
+ jle G_M61347_IG100
;; size=55 bbWeight=0.50 PerfScore 6.38
-G_M61347_IG59:
+G_M61347_IG58:
mov qword ptr [rbp-0xA8], rcx
mov rdx, gword ptr [r12+8*rcx+0x10]
mov gword ptr [rbp-0x140], rdx
mov rdi, rdx
mov rsi, 0xD1FFAB1E ; code for System.Xml.Serialization.MemberMapping:get_Name():System.String:this
cmp dword ptr [rdi], edi
call [rsi]System.Xml.Serialization.MemberMapping:get_Name():System.String:this
mov rdi, rax
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeIdentifier:CheckValidIdentifier(System.String)
call [rax]System.Xml.Serialization.CodeIdentifier:CheckValidIdentifier(System.String)
mov rdi, gword ptr [rbp-0x140]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.MemberMapping:get_Name():System.String:this
call [rax]System.Xml.Serialization.MemberMapping:get_Name():System.String:this
mov rdx, rax
mov rdi, r14
mov rsi, 0xD1FFAB1E ; '.@'
mov rax, 0xD1FFAB1E ; code for System.String:Concat(System.String,System.String,System.String):System.String
call [rax]System.String:Concat(System.String,System.String,System.String):System.String
mov gword ptr [rbp-0x148], rax
mov rdi, 0xD1FFAB1E ; System.Xml.Serialization.XmlSerializationReaderILGen+Member
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0x180], rax
mov rdi, gword ptr [rbp-0x140]
mov rsi, r14
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:GetChoiceIdentifierSource(System.Xml.Serialization.MemberMapping,System.String):System.String
call [rcx]System.Xml.Serialization.XmlSerializationReaderILGen:GetChoiceIdentifierSource(System.Xml.Serialization.MemberMapping,System.String):System.String
mov gword ptr [rsp+0x08], rax
mov rsi, gword ptr [rbp-0x148]
mov r9, gword ptr [rbp-0x140]
mov rdi, gword ptr [rbp-0x180]
mov r8, qword ptr [rbp-0xA8]
xor rdx, rdx
mov rcx, 0xD1FFAB1E ; 'a'
xor eax, eax
mov dword ptr [rsp], eax
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen+Member:.ctor(System.String,System.String,System.String,int,System.Xml.Serialization.MemberMapping,ubyte,System.String):this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen+Member:.ctor(System.String,System.String,System.String,int,System.Xml.Serialization.MemberMapping,ubyte,System.String):this
mov rax, gword ptr [rbp-0x180]
mov gword ptr [rbp-0x150], rax
mov rcx, gword ptr [rbp-0x140]
cmp dword ptr [rcx+0x6C], 0
- jge G_M61347_IG65
+ jge G_M61347_IG64
;; size=242 bbWeight=4 PerfScore 188.00
-G_M61347_IG60:
+G_M61347_IG59:
lea rdi, [rbp-0x58]
mov esi, 12
mov edx, 1
mov r8, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:.ctor(int,int):this
call [r8]System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:.ctor(int,int):this
mov edi, dword ptr [rbp-0x48]
cmp edi, dword ptr [rbp-0x38]
- ja G_M61347_IG131
+ ja G_M61347_IG129
mov rsi, bword ptr [rbp-0x40]
mov eax, edi
lea rax, bword ptr [rsi+2*rax]
mov esi, dword ptr [rbp-0x38]
sub esi, edi
cmp esi, 11
- jae SHORT G_M61347_IG61
+ jae SHORT G_M61347_IG60
lea rdi, [rbp-0x58]
mov rsi, 0xD1FFAB1E ; 'paramsRead['
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:GrowThenCopyString(System.String):this
call [rax]System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:GrowThenCopyString(System.String):this
- jmp SHORT G_M61347_IG62
+ jmp SHORT G_M61347_IG61
;; size=87 bbWeight=2 PerfScore 37.00
-G_M61347_IG61:
+G_M61347_IG60:
mov rdi, 0xD1FFAB1E
vmovdqu xmm0, xmmword ptr [rdi]
vmovdqu xmm1, xmmword ptr [rdi+0x06]
vmovdqu xmmword ptr [rax], xmm0
vmovdqu xmmword ptr [rax+0x06], xmm1
mov edi, dword ptr [rbp-0x48]
add edi, 11
mov dword ptr [rbp-0x48], edi
;; size=37 bbWeight=2 PerfScore 29.00
-G_M61347_IG62:
+G_M61347_IG61:
lea rdi, [rbp-0x58]
mov rsi, qword ptr [rbp-0xA8]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:AppendFormatted[int](int):this
call [rax]System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:AppendFormatted[int](int):this
mov edi, dword ptr [rbp-0x48]
cmp edi, dword ptr [rbp-0x38]
- ja G_M61347_IG131
+ ja G_M61347_IG129
mov rsi, bword ptr [rbp-0x40]
mov eax, edi
lea rax, bword ptr [rsi+2*rax]
mov esi, dword ptr [rbp-0x38]
sub esi, edi
- jne SHORT G_M61347_IG63
+ jne SHORT G_M61347_IG62
lea rdi, [rbp-0x58]
mov rsi, 0xD1FFAB1E ; ']'
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:GrowThenCopyString(System.String):this
call [rax]System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:GrowThenCopyString(System.String):this
- jmp SHORT G_M61347_IG64
+ jmp SHORT G_M61347_IG63
;; size=80 bbWeight=2 PerfScore 37.50
-G_M61347_IG63:
+G_M61347_IG62:
mov rdi, 0xD1FFAB1E
movzx rcx, word ptr [rdi]
mov word ptr [rax], cx
mov edi, dword ptr [rbp-0x48]
inc edi
mov dword ptr [rbp-0x48], edi
;; size=24 bbWeight=2 PerfScore 11.00
-G_M61347_IG64:
+G_M61347_IG63:
lea rdi, [rbp-0x58]
mov rax, 0xD1FFAB1E ; code for System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:ToStringAndClear():System.String:this
call [rax]System.Runtime.CompilerServices.DefaultInterpolatedStringHandler:ToStringAndClear():System.String:this
mov rcx, gword ptr [rbp-0x150]
lea rdi, bword ptr [rcx+0x40]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
;; size=35 bbWeight=2 PerfScore 13.00
-G_M61347_IG65:
+G_M61347_IG64:
mov rcx, gword ptr [rbp-0x140]
mov rdi, gword ptr [rcx+0x10]
test byte ptr [rdi+0x64], 2
setne dil
mov rax, gword ptr [rbp-0x150]
mov byte ptr [rax+0x56], dil
cmp dword ptr [rcx+0x68], 2
- jne SHORT G_M61347_IG67
+ jne SHORT G_M61347_IG66
;; size=36 bbWeight=4 PerfScore 52.00
-G_M61347_IG66:
+G_M61347_IG65:
mov rdi, rcx
mov rdx, 0xD1FFAB1E ; code for System.Xml.Serialization.MemberMapping:get_Name():System.String:this
call [rdx]System.Xml.Serialization.MemberMapping:get_Name():System.String:this
mov rdi, rax
mov rsi, 0xD1FFAB1E ; 'Specified'
mov rax, 0xD1FFAB1E ; code for System.String:Concat(System.String,System.String):System.String
call [rax]System.String:Concat(System.String,System.String):System.String
mov rdx, rax
mov rdi, r14
mov rsi, 0xD1FFAB1E ; '.@'
mov rax, 0xD1FFAB1E ; code for System.String:Concat(System.String,System.String,System.String):System.String
call [rax]System.String:Concat(System.String,System.String,System.String):System.String
mov rcx, gword ptr [rbp-0x150]
lea rdi, bword ptr [rcx+0x48]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rcx, gword ptr [rbp-0x140]
;; size=94 bbWeight=2 PerfScore 30.00
-G_M61347_IG67:
+G_M61347_IG66:
cmp gword ptr [rcx+0x30], 0
- je SHORT G_M61347_IG69
+ je SHORT G_M61347_IG68
;; size=7 bbWeight=4 PerfScore 16.00
-G_M61347_IG68:
+G_M61347_IG67:
mov rax, gword ptr [rbp-0x150]
mov gword ptr [rbp-0xD8], rax
;; size=14 bbWeight=2 PerfScore 4.00
-G_M61347_IG69:
+G_M61347_IG68:
cmp gword ptr [rcx+0x18], 0
- je SHORT G_M61347_IG71
+ je SHORT G_M61347_IG70
;; size=7 bbWeight=4 PerfScore 16.00
-G_M61347_IG70:
+G_M61347_IG69:
mov rdi, gword ptr [rcx+0x18]
cmp byte ptr [rdi+0x34], 0
- je SHORT G_M61347_IG71
+ je SHORT G_M61347_IG70
mov rax, gword ptr [rbp-0x150]
mov gword ptr [rbp-0xE8], rax
;; size=24 bbWeight=2 PerfScore 16.00
-G_M61347_IG71:
+G_M61347_IG70:
cmp dword ptr [rbp-0x2C], 0
- je SHORT G_M61347_IG73
+ je SHORT G_M61347_IG72
;; size=6 bbWeight=4 PerfScore 12.00
-G_M61347_IG72:
+G_M61347_IG71:
cmp gword ptr [rcx+0x20], 0
- je G_M61347_IG78
+ je G_M61347_IG77
mov rdi, gword ptr [rcx+0x20]
cmp dword ptr [rdi+0x08], 0
- je G_M61347_IG78
+ je G_M61347_IG77
cmp dword ptr [rcx+0x6C], 0
- jge G_M61347_IG78
- jmp G_M61347_IG130
+ jge G_M61347_IG77
+ jmp G_M61347_IG128
;; size=40 bbWeight=2 PerfScore 32.00
-G_M61347_IG73:
+G_M61347_IG72:
xor r9d, r9d
mov rdi, gword ptr [rcx+0x20]
cmp dword ptr [rdi+0x08], 0
- jle SHORT G_M61347_IG78
+ jle SHORT G_M61347_IG77
;; size=13 bbWeight=2 PerfScore 12.50
-G_M61347_IG74:
+G_M61347_IG73:
mov rdi, gword ptr [rcx+0x20]
cmp r9d, dword ptr [rdi+0x08]
- jae G_M61347_IG133
+ jae G_M61347_IG131
mov qword ptr [rbp-0xB0], r9
mov rdi, gword ptr [rdi+8*r9+0x10]
cmp byte ptr [rdi+0x34], 0
- je SHORT G_M61347_IG76
+ je SHORT G_M61347_IG75
;; size=32 bbWeight=16 PerfScore 208.00
-G_M61347_IG75:
+G_M61347_IG74:
mov r10, 0xD1FFAB1E ; code for System.Xml.Serialization.Accessor:get_Name():System.String:this
cmp dword ptr [rdi], edi
call [r10]System.Xml.Serialization.Accessor:get_Name():System.String:this
test rax, rax
- je SHORT G_M61347_IG77
+ je SHORT G_M61347_IG76
cmp dword ptr [rax+0x08], 0
- je SHORT G_M61347_IG77
+ je SHORT G_M61347_IG76
;; size=26 bbWeight=8 PerfScore 92.00
-G_M61347_IG76:
+G_M61347_IG75:
mov r9, qword ptr [rbp-0xB0]
inc r9d
mov rdi, r9
mov rcx, gword ptr [rbp-0x140]
mov r9, gword ptr [rcx+0x20]
cmp dword ptr [r9+0x08], edi
mov r9, rdi
- jg SHORT G_M61347_IG74
- jmp SHORT G_M61347_IG78
+ jg SHORT G_M61347_IG73
+ jmp SHORT G_M61347_IG77
;; size=35 bbWeight=16 PerfScore 172.00
-G_M61347_IG77:
+G_M61347_IG76:
mov rax, gword ptr [rbp-0x150]
mov gword ptr [rbp-0xE0], rax
mov rcx, gword ptr [rbp-0x140]
;; size=21 bbWeight=2 PerfScore 6.00
-G_M61347_IG78:
+G_M61347_IG77:
cmp gword ptr [rcx+0x18], 0
- jne SHORT G_M61347_IG82
+ jne SHORT G_M61347_IG81
;; size=7 bbWeight=4 PerfScore 16.00
-G_M61347_IG79:
+G_M61347_IG78:
mov rdi, gword ptr [rcx+0x20]
cmp dword ptr [rdi+0x08], 1
- jne SHORT G_M61347_IG81
+ jne SHORT G_M61347_IG80
cmp dword ptr [rdi+0x08], 0
- jbe G_M61347_IG133
+ jbe G_M61347_IG131
mov rdi, gword ptr [rdi+0x10]
mov rdi, gword ptr [rdi+0x20]
test rdi, rdi
- jne SHORT G_M61347_IG83
+ jne SHORT G_M61347_IG82
;; size=33 bbWeight=2 PerfScore 30.50
-G_M61347_IG80:
+G_M61347_IG79:
mov rax, gword ptr [rbp-0x150]
mov rcx, gword ptr [rbp-0x140]
- jmp G_M61347_IG87
+ jmp G_M61347_IG86
;; size=19 bbWeight=1 PerfScore 4.00
-G_M61347_IG81:
+G_M61347_IG80:
mov rax, gword ptr [rbp-0x150]
mov rcx, gword ptr [rbp-0x140]
- jmp G_M61347_IG87
+ jmp G_M61347_IG86
;; size=19 bbWeight=1 PerfScore 4.00
-G_M61347_IG82:
+G_M61347_IG81:
mov rax, gword ptr [rbp-0x150]
- jmp G_M61347_IG87
+ jmp G_M61347_IG86
;; size=12 bbWeight=2 PerfScore 6.00
-G_M61347_IG83:
+G_M61347_IG82:
mov r10, 0xD1FFAB1E ; System.Xml.Serialization.ArrayMapping
cmp qword ptr [rdi], r10
- je SHORT G_M61347_IG85
+ je SHORT G_M61347_IG84
;; size=15 bbWeight=1 PerfScore 4.25
-G_M61347_IG84:
+G_M61347_IG83:
mov rax, gword ptr [rbp-0x150]
mov rcx, gword ptr [rbp-0x140]
- jmp G_M61347_IG87
+ jmp G_M61347_IG86
;; size=19 bbWeight=0.50 PerfScore 2.00
-G_M61347_IG85:
+G_M61347_IG84:
mov rdi, 0xD1FFAB1E ; System.Xml.Serialization.XmlSerializationReaderILGen+Member
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0x188], rax
mov rdi, gword ptr [rbp-0x140]
mov rsi, r14
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:GetChoiceIdentifierSource(System.Xml.Serialization.MemberMapping,System.String):System.String
call [rcx]System.Xml.Serialization.XmlSerializationReaderILGen:GetChoiceIdentifierSource(System.Xml.Serialization.MemberMapping,System.String):System.String
mov gword ptr [rsp+0x08], rax
mov rsi, gword ptr [rbp-0x148]
mov rdx, rsi
mov rdi, gword ptr [rbp-0x188]
mov r8, qword ptr [rbp-0xA8]
mov r9, gword ptr [rbp-0x140]
mov rcx, 0xD1FFAB1E ; 'a'
xor eax, eax
mov dword ptr [rsp], eax
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen+Member:.ctor(System.String,System.String,System.String,int,System.Xml.Serialization.MemberMapping,ubyte,System.String):this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen+Member:.ctor(System.String,System.String,System.String,int,System.Xml.Serialization.MemberMapping,ubyte,System.String):this
mov rax, gword ptr [rbp-0x150]
mov rsi, gword ptr [rax+0x48]
mov rcx, gword ptr [rbp-0x188]
lea rdi, bword ptr [rcx+0x48]
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbp-0x100]
inc dword ptr [rax+0x14]
mov rcx, gword ptr [rax+0x08]
mov edx, dword ptr [rax+0x10]
cmp dword ptr [rcx+0x08], edx
- ja SHORT G_M61347_IG86
+ ja SHORT G_M61347_IG85
mov rdi, rax
mov rsi, gword ptr [rbp-0x188]
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rcx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M61347_IG89
+ jmp SHORT G_M61347_IG88
;; size=180 bbWeight=2 PerfScore 81.50
-G_M61347_IG86:
+G_M61347_IG85:
lea edi, [rdx+0x01]
mov dword ptr [rax+0x10], edi
cmp edx, dword ptr [rcx+0x08]
- jae G_M61347_IG133
+ jae G_M61347_IG131
mov edi, edx
lea rdi, bword ptr [rcx+8*rdi+0x10]
mov rsi, gword ptr [rbp-0x188]
call CORINFO_HELP_ASSIGN_REF
- jmp SHORT G_M61347_IG89
+ jmp SHORT G_M61347_IG88
;; size=36 bbWeight=2 PerfScore 21.50
-G_M61347_IG87:
+G_M61347_IG86:
mov r10, gword ptr [rbp-0x100]
inc dword ptr [r10+0x14]
mov r11, gword ptr [r10+0x08]
mov edi, dword ptr [r10+0x10]
cmp dword ptr [r11+0x08], edi
- ja SHORT G_M61347_IG88
+ ja SHORT G_M61347_IG87
mov rdi, r10
mov rsi, rax
mov r11, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [r11]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M61347_IG89
+ jmp SHORT G_M61347_IG88
;; size=46 bbWeight=2 PerfScore 35.50
-G_M61347_IG88:
+G_M61347_IG87:
lea r13d, [rdi+0x01]
mov dword ptr [r10+0x10], r13d
cmp edi, dword ptr [r11+0x08]
- jae G_M61347_IG133
+ jae G_M61347_IG131
mov edi, edi
lea rdi, bword ptr [r11+8*rdi+0x10]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov r13, gword ptr [rbp-0xD0]
;; size=40 bbWeight=2 PerfScore 18.00
-G_M61347_IG89:
+G_M61347_IG88:
mov rax, gword ptr [rbp-0x140]
mov rdi, gword ptr [rax+0x10]
mov edi, dword ptr [rdi+0x60]
cmp edi, 5
- je SHORT G_M61347_IG91
+ je SHORT G_M61347_IG90
;; size=19 bbWeight=4 PerfScore 25.00
-G_M61347_IG90:
+G_M61347_IG89:
cmp edi, 6
- je SHORT G_M61347_IG91
+ je SHORT G_M61347_IG90
cmp edi, 7
- jne G_M61347_IG100
+ jne G_M61347_IG99
;; size=14 bbWeight=2 PerfScore 5.00
-G_M61347_IG91:
+G_M61347_IG90:
mov rcx, gword ptr [rbp-0xF0]
inc dword ptr [rcx+0x14]
mov rdx, gword ptr [rcx+0x08]
mov r8d, dword ptr [rcx+0x10]
cmp dword ptr [rdx+0x08], r8d
- ja SHORT G_M61347_IG92
+ ja SHORT G_M61347_IG91
mov rdi, rcx
mov rsi, gword ptr [rbp-0x150]
mov rdx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rdx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M61347_IG93
+ jmp SHORT G_M61347_IG92
;; size=48 bbWeight=2 PerfScore 37.00
-G_M61347_IG92:
+G_M61347_IG91:
lea edi, [r8+0x01]
mov dword ptr [rcx+0x10], edi
cmp r8d, dword ptr [rdx+0x08]
- jae G_M61347_IG133
+ jae G_M61347_IG131
mov edi, r8d
lea rdi, bword ptr [rdx+8*rdi+0x10]
mov rsi, gword ptr [rbp-0x150]
call CORINFO_HELP_ASSIGN_REF
;; size=37 bbWeight=2 PerfScore 17.50
-G_M61347_IG93:
+G_M61347_IG92:
mov rax, gword ptr [rbp-0x140]
mov rdi, gword ptr [rax+0x10]
mov rsi, rdi
mov esi, dword ptr [rsi+0x60]
cmp esi, 5
- je SHORT G_M61347_IG94
+ je SHORT G_M61347_IG93
cmp esi, 6
- je SHORT G_M61347_IG94
+ je SHORT G_M61347_IG93
cmp esi, 7
- jne SHORT G_M61347_IG97
+ jne SHORT G_M61347_IG96
;; size=32 bbWeight=2 PerfScore 18.00
-G_M61347_IG94:
+G_M61347_IG93:
mov rsi, gword ptr [rax+0x20]
cmp dword ptr [rsi+0x08], 1
- jne SHORT G_M61347_IG98
+ jne SHORT G_M61347_IG97
cmp dword ptr [rsi+0x08], 0
- jbe G_M61347_IG133
+ jbe G_M61347_IG131
mov rsi, gword ptr [rsi+0x10]
mov rsi, gword ptr [rsi+0x20]
test rsi, rsi
- je SHORT G_M61347_IG98
+ je SHORT G_M61347_IG97
;; size=33 bbWeight=2 PerfScore 30.50
-G_M61347_IG95:
+G_M61347_IG94:
mov rax, 0xD1FFAB1E ; System.Xml.Serialization.ArrayMapping
cmp qword ptr [rsi], rax
- jne SHORT G_M61347_IG98
+ jne SHORT G_M61347_IG97
;; size=15 bbWeight=1 PerfScore 4.25
-G_M61347_IG96:
+G_M61347_IG95:
cmp dword ptr [rdi+0x60], 5
- je G_M61347_IG100
+ je G_M61347_IG99
;; size=10 bbWeight=2 PerfScore 8.00
-G_M61347_IG97:
+G_M61347_IG96:
xor rdi, rdi
mov rax, gword ptr [rbp-0x150]
mov gword ptr [rax+0x40], rdi
- jmp SHORT G_M61347_IG100
+ jmp SHORT G_M61347_IG99
;; size=15 bbWeight=2 PerfScore 8.50
-G_M61347_IG98:
+G_M61347_IG97:
xor rdi, rdi
mov rax, gword ptr [rbp-0x150]
mov gword ptr [rax+0x40], rdi
cmp rax, gword ptr [rbp-0xD8]
- je SHORT G_M61347_IG100
+ je SHORT G_M61347_IG99
cmp rax, gword ptr [rbp-0xE0]
- je SHORT G_M61347_IG100
+ je SHORT G_M61347_IG99
mov r8, gword ptr [rbp-0xF8]
inc dword ptr [r8+0x14]
mov r9, gword ptr [r8+0x08]
mov r10d, dword ptr [r8+0x10]
cmp dword ptr [r9+0x08], r10d
- ja SHORT G_M61347_IG99
+ ja SHORT G_M61347_IG98
mov rdi, r8
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M61347_IG100
+ jmp SHORT G_M61347_IG99
;; size=76 bbWeight=2 PerfScore 52.00
-G_M61347_IG99:
+G_M61347_IG98:
lea edi, [r10+0x01]
mov dword ptr [r8+0x10], edi
cmp r10d, dword ptr [r9+0x08]
- jae G_M61347_IG133
+ jae G_M61347_IG131
mov edi, r10d
lea rdi, bword ptr [r9+8*rdi+0x10]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
;; size=34 bbWeight=2 PerfScore 16.00
-G_M61347_IG100:
+G_M61347_IG99:
mov rdi, qword ptr [rbp-0xA8]
inc edi
cmp dword ptr [r12+0x08], edi
mov rcx, rdi
- jg G_M61347_IG59
+ jg G_M61347_IG58
;; size=23 bbWeight=4 PerfScore 22.00
-G_M61347_IG101:
+G_M61347_IG100:
mov rax, gword ptr [rbp-0xE0]
test rax, rax
- je SHORT G_M61347_IG103
+ je SHORT G_M61347_IG102
mov rcx, gword ptr [rbp-0xF8]
inc dword ptr [rcx+0x14]
mov rdx, gword ptr [rcx+0x08]
mov r8d, dword ptr [rcx+0x10]
mov r9d, dword ptr [rdx+0x08]
cmp r9d, r8d
- ja SHORT G_M61347_IG102
+ ja SHORT G_M61347_IG101
mov rdi, rcx
mov gword ptr [rbp-0xE0], rax
mov rsi, rax
mov rdx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rdx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
mov rax, gword ptr [rbp-0xE0]
- jmp SHORT G_M61347_IG103
+ jmp SHORT G_M61347_IG102
;; size=73 bbWeight=0.50 PerfScore 10.62
-G_M61347_IG102:
+G_M61347_IG101:
lea edi, [r8+0x01]
mov dword ptr [rcx+0x10], edi
cmp r8d, r9d
- jae G_M61347_IG133
+ jae G_M61347_IG131
mov edi, r8d
lea rdi, bword ptr [rdx+8*rdi+0x10]
mov gword ptr [rbp-0xE0], rax
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbp-0xE0]
;; size=46 bbWeight=0.50 PerfScore 3.62
-G_M61347_IG103:
+G_M61347_IG102:
mov rcx, gword ptr [rbp-0xD8]
test rcx, rcx
- je SHORT G_M61347_IG105
+ je SHORT G_M61347_IG104
mov gword ptr [rbp-0xE0], rax
cmp rcx, rax
- je SHORT G_M61347_IG104
+ je SHORT G_M61347_IG103
mov rdx, gword ptr [rbp-0xF8]
inc dword ptr [rdx+0x14]
mov r8, gword ptr [rdx+0x08]
mov r9d, dword ptr [rdx+0x10]
mov r10d, dword ptr [r8+0x08]
cmp r10d, r9d
- jbe SHORT G_M61347_IG106
- jmp SHORT G_M61347_IG107
+ jbe SHORT G_M61347_IG105
+ jmp SHORT G_M61347_IG106
;; size=53 bbWeight=0.50 PerfScore 8.88
-G_M61347_IG104:
+G_M61347_IG103:
mov gword ptr [rbp-0xD8], rcx
- jmp SHORT G_M61347_IG108
+ jmp SHORT G_M61347_IG107
;; size=9 bbWeight=0.25 PerfScore 0.75
-G_M61347_IG105:
+G_M61347_IG104:
mov gword ptr [rbp-0xD8], rcx
mov gword ptr [rbp-0xE0], rax
- jmp SHORT G_M61347_IG108
+ jmp SHORT G_M61347_IG107
;; size=16 bbWeight=0.25 PerfScore 1.00
-G_M61347_IG106:
+G_M61347_IG105:
mov rdi, rdx
mov gword ptr [rbp-0xD8], rcx
mov rsi, rcx
mov r8, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [r8]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M61347_IG108
+ jmp SHORT G_M61347_IG107
;; size=28 bbWeight=0.50 PerfScore 3.38
-G_M61347_IG107:
+G_M61347_IG106:
lea edi, [r9+0x01]
mov dword ptr [rdx+0x10], edi
cmp r9d, r10d
- jae G_M61347_IG133
+ jae G_M61347_IG131
mov edi, r9d
lea rdi, bword ptr [r8+8*rdi+0x10]
mov gword ptr [rbp-0xD8], rcx
mov rsi, rcx
call CORINFO_HELP_ASSIGN_REF
;; size=39 bbWeight=0.50 PerfScore 3.12
-G_M61347_IG108:
+G_M61347_IG107:
mov rdi, gword ptr [rbp-0xF0]
mov rdx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
call [rdx]System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
mov gword ptr [rbp-0x108], rax
mov rdi, gword ptr [rbp-0xF8]
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
call [rcx]System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
mov gword ptr [rbp-0x110], rax
mov rdi, gword ptr [rbp-0x100]
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
call [rcx]System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
mov gword ptr [rbp-0x118], rax
mov rdi, rbx
mov rsi, gword ptr [rbp-0x108]
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteMemberBegin(System.Xml.Serialization.XmlSerializationReaderILGen+Member[]):this
call [rcx]System.Xml.Serialization.XmlSerializationReaderILGen:WriteMemberBegin(System.Xml.Serialization.XmlSerializationReaderILGen+Member[]):this
mov esi, dword ptr [r12+0x08]
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteParamsRead(int):this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteParamsRead(int):this
mov rdi, rbx
mov rsi, gword ptr [rbp-0x118]
mov rdx, gword ptr [rbp-0xE8]
mov r8, r13
mov rcx, 0xD1FFAB1E ; 'UnknownNode'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteAttributes(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],System.Xml.Serialization.XmlSerializationReaderILGen+Member,System.String,System.Reflection.Emit.LocalBuilder):this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteAttributes(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],System.Xml.Serialization.XmlSerializationReaderILGen+Member,System.String,System.Reflection.Emit.LocalBuilder):this
cmp gword ptr [rbp-0xE8], 0
- je SHORT G_M61347_IG109
+ je SHORT G_M61347_IG108
mov rdi, rbx
mov rsi, gword ptr [rbp-0x108]
xor edx, edx
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteMemberEnd(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],ubyte):this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteMemberEnd(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],ubyte):this
;; size=196 bbWeight=0.50 PerfScore 19.75
-G_M61347_IG109:
+G_M61347_IG108:
mov r12, gword ptr [rbp-0x1D0]
mov r9, r12
xor rdi, rdi
mov gword ptr [rsp], rdi
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'get_Reader'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov gword ptr [rbp-0x120], rax
mov r9, r12
xor rdi, rdi
mov gword ptr [rsp], rdi
mov rdi, 0xD1FFAB1E ; 'System.Xml.XmlReader'
mov rsi, 0xD1FFAB1E ; 'MoveToElement'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov r10, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [r10]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov gword ptr [rbp-0x128], rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x120]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x128]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Pop():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Pop():this
mov r9, r12
xor rdi, rdi
mov gword ptr [rsp], rdi
mov rdi, 0xD1FFAB1E ; 'System.Xml.XmlReader'
mov rsi, 0xD1FFAB1E ; 'get_IsEmptyElement'
mov edx, 52
xor rcx, rcx
mov r8d, 3
;; size=260 bbWeight=0.50 PerfScore 26.50
-G_M61347_IG110:
+G_M61347_IG109:
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov gword ptr [rbp-0x130], rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x120]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x130]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
cmp byte ptr [rdi], dil
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InternalIf(ubyte):this
mov r9, r12
xor rdi, rdi
mov gword ptr [rsp], rdi
mov rdi, 0xD1FFAB1E ; 'System.Xml.XmlReader'
mov rsi, 0xD1FFAB1E ; 'Skip'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov gword ptr [rbp-0x138], rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x120]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
;; size=220 bbWeight=0.50 PerfScore 33.25
-G_M61347_IG111:
+G_M61347_IG110:
mov rsi, gword ptr [rbp-0x138]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, rbx
mov rsi, gword ptr [rbp-0x110]
xor edx, edx
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteMemberEnd(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],ubyte):this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteMemberEnd(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],ubyte):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov r13, rdi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
mov rsi, rax
mov rdi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rdi+0x74]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:EndIf():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:EndIf():this
mov r9, r12
xor rdi, rdi
mov gword ptr [rsp], rdi
mov rdi, 0xD1FFAB1E ; 'System.Xml.XmlReader'
mov rsi, 0xD1FFAB1E ; 'ReadStartElement'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov r13, rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
;; size=209 bbWeight=0.50 PerfScore 31.38
-G_M61347_IG112:
+G_M61347_IG111:
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x120]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbp-0x118]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:IsSequence(System.Xml.Serialization.XmlSerializationReaderILGen+Member[]):ubyte
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:IsSequence(System.Xml.Serialization.XmlSerializationReaderILGen+Member[]):ubyte
test eax, eax
- je G_M61347_IG118
+ je G_M61347_IG117
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldc(int):this
mov r13, gword ptr [rbx+0x70]
mov rax, gword ptr [r13+0x28]
mov gword ptr [rbp-0x1C8], rax
mov rdi, gword ptr [rax+0x10]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'state'
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rcx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- jne G_M61347_IG116
+ jne G_M61347_IG115
xor rdi, rdi
mov gword ptr [rbp-0x88], rdi
mov rdi, gword ptr [rbp-0x1C8]
- cmp gword ptr [rdi+0x08], 0
- jne SHORT G_M61347_IG113
+ mov rdi, gword ptr [rdi+0x08]
+ test rdi, rdi
+ jne SHORT G_M61347_IG112
xor rdi, rdi
mov gword ptr [rbp-0x88], rdi
- jmp SHORT G_M61347_IG114
- ;; size=194 bbWeight=0.50 PerfScore 31.12
-G_M61347_IG113:
- mov rdi, gword ptr [rdi+0x08]
+ jmp SHORT G_M61347_IG113
+ ;; size=196 bbWeight=0.50 PerfScore 30.75
+G_M61347_IG112:
lea rdx, [rbp-0x88]
mov rsi, 0xD1FFAB1E ; 'state'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.LocalScope:TryGetValue(System.String,byref):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.LocalScope:TryGetValue(System.String,byref):ubyte:this
test eax, eax
- jne G_M61347_IG117
- ;; size=43 bbWeight=0.50 PerfScore 5.12
-G_M61347_IG114:
+ jne G_M61347_IG116
+ ;; size=39 bbWeight=0.50 PerfScore 4.12
+G_M61347_IG113:
lea rcx, [rbp-0x90]
mov rdi, r13
mov rsi, 0xD1FFAB1E ; 'System.Int32'
mov rdx, 0xD1FFAB1E ; 'state'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
call [rax]System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
test eax, eax
- jne SHORT G_M61347_IG115
+ jne SHORT G_M61347_IG114
mov rdi, gword ptr [r13+0x18]
mov rsi, 0xD1FFAB1E ; 'System.Int32'
xor edx, edx
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x60]
call [rax+0x20]System.Reflection.Emit.ILGenerator:DeclareLocal(System.Type,ubyte):System.Reflection.Emit.LocalBuilder:this
mov gword ptr [rbp-0x90], rax
;; size=79 bbWeight=0.50 PerfScore 8.12
-G_M61347_IG115:
+G_M61347_IG114:
mov rdi, gword ptr [r13+0x28]
mov rdx, gword ptr [rbp-0x90]
mov rdi, gword ptr [rdi+0x10]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'state'
mov ecx, 1
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
mov rdi, gword ptr [rbp-0x90]
xor rsi, rsi
mov gword ptr [rbp-0x90], rsi
mov gword ptr [rbp-0x88], rdi
- jmp SHORT G_M61347_IG117
+ jmp SHORT G_M61347_IG116
;; size=70 bbWeight=0.50 PerfScore 8.50
-G_M61347_IG116:
+G_M61347_IG115:
mov rdi, gword ptr [rax]
mov gword ptr [rbp-0x88], rdi
;; size=10 bbWeight=0.50 PerfScore 1.50
-G_M61347_IG117:
+G_M61347_IG116:
mov rdi, r13
mov rsi, gword ptr [rbp-0x88]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
xor rdi, rdi
mov gword ptr [rbp-0x88], rdi
;; size=31 bbWeight=0.50 PerfScore 2.88
-G_M61347_IG118:
+G_M61347_IG117:
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteWhileNotLoopStart():this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteWhileNotLoopStart():this
mov rdi, gword ptr [rbp-0x118]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:ExpectedElements(System.Xml.Serialization.XmlSerializationReaderILGen+Member[]):System.String
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:ExpectedElements(System.Xml.Serialization.XmlSerializationReaderILGen+Member[]):System.String
mov rsi, rax
mov rdi, 0xD1FFAB1E ; 'UnknownNode((object)o, '
mov rdx, 0xD1FFAB1E ; ');'
mov rax, 0xD1FFAB1E ; code for System.String:Concat(System.String,System.String,System.String):System.String
call [rax]System.String:Concat(System.String,System.String,System.String):System.String
mov rcx, rax
mov rdi, rbx
mov rsi, gword ptr [rbp-0x118]
mov rdx, rcx
mov r8, gword ptr [rbp-0xE0]
mov r9, gword ptr [rbp-0xD8]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteMemberElements(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],System.String,System.String,System.Xml.Serialization.XmlSerializationReaderILGen+Member,System.Xml.Serialization.XmlSerializationReaderILGen+Member):this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteMemberElements(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],System.String,System.String,System.Xml.Serialization.XmlSerializationReaderILGen+Member,System.Xml.Serialization.XmlSerializationReaderILGen+Member):this
mov r9, r12
xor rdi, rdi
mov gword ptr [rsp], rdi
mov rdi, 0xD1FFAB1E ; 'System.Xml.XmlReader'
mov rsi, 0xD1FFAB1E ; 'MoveToContent'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov r13, rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x120]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
;; size=238 bbWeight=0.50 PerfScore 26.62
-G_M61347_IG119:
+G_M61347_IG118:
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Pop():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Pop():this
mov rdi, rbx
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteWhileLoopEnd():this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteWhileLoopEnd():this
mov rdi, rbx
mov rsi, gword ptr [rbp-0x110]
xor edx, edx
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteMemberEnd(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],ubyte):this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteMemberEnd(System.Xml.Serialization.XmlSerializationReaderILGen+Member[],ubyte):this
mov r9, r12
xor rdi, rdi
mov gword ptr [rsp], rdi
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'ReadEndElement'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov r13, rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov r13, gword ptr [rbx+0x70]
mov rdi, gword ptr [r15+0x10]
mov edi, dword ptr [rdi+0x40]
mov r15, gword ptr [r13+0x28]
mov rdi, gword ptr [r15+0x10]
cmp byte ptr [rdi], dil
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- jne SHORT G_M61347_IG121
+ jne SHORT G_M61347_IG120
xor rdi, rdi
mov gword ptr [rbp-0x98], rdi
cmp gword ptr [r15+0x08], 0
- jne SHORT G_M61347_IG120
+ jne SHORT G_M61347_IG119
xor rdi, rdi
mov gword ptr [rbp-0x98], rdi
- jmp SHORT G_M61347_IG122
+ jmp SHORT G_M61347_IG121
;; size=220 bbWeight=0.50 PerfScore 32.00
-G_M61347_IG120:
+G_M61347_IG119:
mov rdi, gword ptr [r15+0x08]
lea rdx, [rbp-0x98]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.LocalScope:TryGetValue(System.String,byref):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.LocalScope:TryGetValue(System.String,byref):ubyte:this
- jmp SHORT G_M61347_IG122
+ jmp SHORT G_M61347_IG121
;; size=30 bbWeight=0.50 PerfScore 5.50
-G_M61347_IG121:
+G_M61347_IG120:
mov rdi, gword ptr [rax]
mov gword ptr [rbp-0x98], rdi
;; size=10 bbWeight=0.50 PerfScore 1.50
-G_M61347_IG122:
+G_M61347_IG121:
mov rsi, gword ptr [rbp-0x98]
xor rdi, rdi
mov gword ptr [rbp-0x98], rdi
mov rdi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov r15, gword ptr [rbx+0x70]
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
mov rsi, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
- jmp G_M61347_IG124
+ jmp G_M61347_IG123
;; size=78 bbWeight=0.50 PerfScore 12.38
-G_M61347_IG123:
+G_M61347_IG122:
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 2
call CORINFO_HELP_NEWARR_1_OBJ
mov r9, 0xD1FFAB1E ; 'System.String'
mov gword ptr [rax+0x10], r9
mov gword ptr [rax+0x18], r9
xor r9, r9
mov gword ptr [rsp], r9
mov r9, rax
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'CreateAbstractTypeException'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov r14, rax
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov r13, gword ptr [rbx+0x70]
mov rdi, gword ptr [r15+0x20]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
call [rax]System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
mov rsi, rax
mov rdi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
mov r13, gword ptr [rbx+0x70]
mov rdi, gword ptr [r15+0x18]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
call [rax]System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
mov rsi, rax
mov rdi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Throw():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Throw():this
;; size=235 bbWeight=0.50 PerfScore 31.62
-G_M61347_IG124:
+G_M61347_IG123:
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov rsi, gword ptr [rbx+0x70]
mov esi, dword ptr [rsi+0x74]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
mov r15, gword ptr [rbx+0x70]
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
mov rsi, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:EndMethod():System.Reflection.Emit.MethodBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:EndMethod():System.Reflection.Emit.MethodBuilder:this
nop
;; size=86 bbWeight=1 PerfScore 40.50
-G_M61347_IG125:
+G_M61347_IG124:
add rsp, 456
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
-G_M61347_IG126:
- mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.String]
- call CORINFO_HELP_GET_GCSTATIC_BASE
- mov rax, gword ptr [rbp-0x158]
- jmp G_M61347_IG06
- ;; size=27 bbWeight=0 PerfScore 0.00
-G_M61347_IG127:
+G_M61347_IG125:
mov rsi, r14
mov rdi, 0xD1FFAB1E ; System.ThrowHelper:ThrowKeyNotFoundException[System.String](System.String)
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
call [rax]System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
int3
;; size=26 bbWeight=0 PerfScore 0.00
-G_M61347_IG128:
+G_M61347_IG126:
mov edi, 0x1AAFA
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rsi, rax
mov rdi, 0xD1FFAB1E ; System.ThrowHelper:ThrowKeyNotFoundException[System.String](System.String)
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
call [rax]System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
int3
;; size=46 bbWeight=0 PerfScore 0.00
-G_M61347_IG129:
+G_M61347_IG127:
mov edi, 0x1AB26
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rsi, rax
mov rdi, 0xD1FFAB1E ; System.ThrowHelper:ThrowKeyNotFoundException[System.String](System.String)
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
call [rax]System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
int3
;; size=46 bbWeight=0 PerfScore 0.00
-G_M61347_IG130:
+G_M61347_IG128:
mov rcx, gword ptr [r15+0x20]
lea rdx, [rbp-0x60]
mov rdi, r15
mov rsi, gword ptr [rbp-0x140]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.StructMapping:FindDeclaringMapping(System.Xml.Serialization.MemberMapping,byref,System.String):System.Xml.Serialization.MemberMapping:this
call [rax]System.Xml.Serialization.StructMapping:FindDeclaringMapping(System.Xml.Serialization.MemberMapping,byref,System.String):System.Xml.Serialization.MemberMapping:this
mov rax, 0xD1FFAB1E ; code for System.SR:get_XmlSequenceHierarchy():System.String
call [rax]System.SR:get_XmlSequenceHierarchy():System.String
mov rbx, rax
mov rdi, 0xD1FFAB1E ; System.Object[]
mov esi, 4
call CORINFO_HELP_NEWARR_1_OBJ
mov r14, rax
mov rdi, gword ptr [r15+0x10]
mov rsi, gword ptr [rdi+0x10]
lea rdi, bword ptr [r14+0x10]
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [rbp-0x140]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.MemberMapping:get_Name():System.String:this
call [rax]System.Xml.Serialization.MemberMapping:get_Name():System.String:this
lea rdi, bword ptr [r14+0x18]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [rbp-0x60]
mov rdi, gword ptr [rdi+0x10]
mov rsi, gword ptr [rdi+0x10]
lea rdi, bword ptr [r14+0x20]
call CORINFO_HELP_ASSIGN_REF
lea rdi, bword ptr [r14+0x28]
mov bword ptr [rbp-0x1D8], rdi
mov edi, 0x15CA8
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rdi, bword ptr [rbp-0x1D8]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; System.InvalidOperationException
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, rbx
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.SR:Format(System.String,System.Object[]):System.String
call [rax]System.SR:Format(System.String,System.Object[]):System.String
mov rsi, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.InvalidOperationException:.ctor(System.String):this
call [rax]System.InvalidOperationException:.ctor(System.String):this
mov rdi, r15
call CORINFO_HELP_THROW
int3
;; size=246 bbWeight=0 PerfScore 0.00
-G_M61347_IG131:
+G_M61347_IG129:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRangeException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRangeException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M61347_IG132:
+G_M61347_IG130:
mov rax, 0xD1FFAB1E ; code for System.SR:get_Arg_NeverValueType():System.String
call [rax]System.SR:get_Arg_NeverValueType():System.String
mov rbx, rax
mov rdi, 0xD1FFAB1E ; System.NotSupportedException
call CORINFO_HELP_NEWSFAST
mov r15, rax
mov rdi, r15
mov rsi, rbx
mov rax, 0xD1FFAB1E ; code for System.NotSupportedException:.ctor(System.String):this
call [rax]System.NotSupportedException:.ctor(System.String):this
mov rdi, r15
call CORINFO_HELP_THROW
int3
;; size=60 bbWeight=0 PerfScore 0.00
-G_M61347_IG133:
+G_M61347_IG131:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 9256, prolog size 95, PerfScore 2762.46, instruction count 1969, allocated bytes for code 9256 (MethodHash=896d105c) for method System.Xml.Serialization.XmlSerializationReaderILGen:WriteLiteralStructMethod(System.Xml.Serialization.StructMapping):this (FullOpts)
+; Total bytes of code 9208, prolog size 95, PerfScore 2756.83, instruction count 1962, allocated bytes for code 9208 (MethodHash=896d105c) for method System.Xml.Serialization.XmlSerializationReaderILGen:WriteLiteralStructMethod(System.Xml.Serialization.StructMapping):this (FullOpts)
-46 (-1.54 % of base) - System.Xml.Serialization.XmlSerializationReaderILGen:WriteEnumMethod(System.Xml.Serialization.EnumMapping):this
; Assembly listing for method System.Xml.Serialization.XmlSerializationReaderILGen:WriteEnumMethod(System.Xml.Serialization.EnumMapping):this (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX512 - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 64 single block inlinees; 16 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T02] ( 43, 48 ) ref -> rbx this class-hnd single-def <System.Xml.Serialization.XmlSerializationReaderILGen>
; V01 arg1 [V01,T23] ( 12, 11.50) ref -> r15 class-hnd single-def <System.Xml.Serialization.EnumMapping>
; V02 loc0 [V02 ] ( 2, 1 ) ref -> [rbp-0x30] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd <System.Reflection.Emit.MethodBuilder>
; V03 loc1 [V03,T86] ( 4, 2 ) ref -> r14 ld-addr-op class-hnd <System.String>
; V04 loc2 [V04,T102] ( 2, 1.50) ref -> r13 class-hnd exact single-def <System.String>
;* V05 loc3 [V05 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def <System.Collections.Generic.List`1[System.Type]>
;* V06 loc4 [V06 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def <System.Collections.Generic.List`1[System.String]>
; V07 loc5 [V07,T52] ( 4, 4 ) ref -> [rbp-0x68] class-hnd spill-single-def <System.Type>
; V08 loc6 [V08,T88] ( 3, 2 ) ref -> [rbp-0x70] class-hnd spill-single-def <System.Type>
; V09 loc7 [V09,T31] ( 4, 9.50) ref -> r14 class-hnd exact single-def <System.Xml.Serialization.ConstantMapping[]>
; V10 loc8 [V10,T103] ( 2, 1 ) ref -> r15 class-hnd single-def <System.Reflection.MethodInfo>
; V11 loc9 [V11,T04] ( 11, 25 ) ref -> r13 class-hnd exact single-def <System.Collections.Generic.List`1[System.Reflection.Emit.Label]>
; V12 loc10 [V12,T08] ( 9, 20.50) ref -> r12 class-hnd exact single-def <System.Collections.Generic.List`1[System.Object]>
;* V13 loc11 [V13 ] ( 0, 0 ) struct ( 8) zero-ref <System.Reflection.Emit.Label>
;* V14 loc12 [V14 ] ( 0, 0 ) struct ( 8) zero-ref <System.Reflection.Emit.Label>
; V15 loc13 [V15,T63] ( 4, 3.50) ref -> [rbp-0x78] class-hnd spill-single-def <System.Reflection.Emit.LocalBuilder>
; V16 loc14 [V16,T51] ( 2, 4.50) ref -> [rbp-0x80] class-hnd exact spill-single-def <System.Collections.Generic.HashSet`1[System.String]>
; V17 loc15 [V17,T104] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.MethodInfo>
;* V18 loc16 [V18,T107] ( 0, 0 ) int -> zero-ref
; V19 loc17 [V19,T13] ( 5, 16 ) ref -> [rbp-0x88] class-hnd exact spill-single-def <System.Xml.Serialization.ConstantMapping>
;* V20 loc18 [V20 ] ( 0, 0 ) struct ( 8) zero-ref <System.Reflection.Emit.Label>
; V21 loc19 [V21,T55] ( 2, 4 ) ref -> rsi class-hnd <System.Reflection.MethodInfo>
;* V22 loc20 [V22,T108] ( 0, 0 ) int -> zero-ref
; V23 OutArgs [V23 ] ( 1, 1 ) struct (16) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V24 tmp1 [V24,T11] ( 9, 16 ) ref -> r12 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Type]>
; V25 tmp2 [V25,T12] ( 9, 16 ) ref -> [rbp-0x90] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.String]>
; V26 tmp3 [V26,T42] ( 3, 6 ) ref -> [rbp-0x98] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Serialization.CodeGenerator>
; V27 tmp4 [V27,T24] ( 6, 12 ) ref -> [rbp-0xA0] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V28 tmp5 [V28 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.Xml.Serialization.MethodBuilderInfo>
; V29 tmp6 [V29,T56] ( 2, 4 ) ref -> r12 class-hnd single-def "impAppendStmt" <System.Type[]>
; V30 tmp7 [V30,T66] ( 3, 3 ) ref -> r13 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.Label]>
; V31 tmp8 [V31,T67] ( 3, 3 ) ref -> r12 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Object]>
; V32 tmp9 [V32,T53] ( 4, 4 ) ref -> [rbp-0xA8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.HashSet`1[System.String]>
; V33 tmp10 [V33,T36] ( 2, 8 ) ref -> [rbp-0xB0] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
; V34 tmp11 [V34,T01] ( 6, 52 ) ref -> [rbp-0xB8] class-hnd exact spill-single-def "dup spill" <System.Type[]>
;* V35 tmp12 [V35,T62] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.RuntimeType>
;* V36 tmp13 [V36 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V37 tmp14 [V37 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Strict ordering of exceptions for Array store" <System.RuntimeType>
; V38 tmp15 [V38,T37] ( 2, 8 ) ref -> rdi class-hnd "impAppendStmt" <System.Type>
; V39 tmp16 [V39,T14] ( 2, 16 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V40 tmp17 [V40 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
; V41 tmp18 [V41,T15] ( 2, 16 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V42 tmp19 [V42 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V43 tmp20 [V43 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V44 tmp21 [V44 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
; V45 tmp22 [V45,T54] ( 4, 4 ) ref -> rax class-hnd exact single-def "dup spill" <System.Type[]>
;* V46 tmp23 [V46 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
;* V47 tmp24 [V47 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V48 tmp25 [V48 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V49 tmp26 [V49 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V50 tmp27 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V51 tmp28 [V51 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
;* V52 tmp29 [V52 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
; V53 tmp30 [V53,T50] ( 5, 5 ) ref -> rax class-hnd exact single-def "dup spill" <System.Type[]>
;* V54 tmp31 [V54 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
;* V55 tmp32 [V55 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V56 tmp33 [V56 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V57 tmp34 [V57 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V58 tmp35 [V58 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V59 tmp36 [V59 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V60 tmp37 [V60 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V61 tmp38 [V61 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
;* V62 tmp39 [V62 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V63 tmp40 [V63 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V64 tmp41 [V64,T43] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.Xml.Serialization.TypeMapping,System.String]>
; V65 tmp42 [V65,T83] ( 3, 2.50) byref -> rax single-def "Inline stloc first use temp"
;* V66 tmp43 [V66 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
; V67 tmp44 [V67,T84] ( 3, 2.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Type[]>
; V68 tmp45 [V68,T64] ( 4, 3 ) int -> rcx "Inline stloc first use temp"
; V69 tmp46 [V69,T85] ( 3, 2.50) ref -> rcx class-hnd single-def "Inline stloc first use temp" <System.String[]>
; V70 tmp47 [V70,T65] ( 4, 3 ) int -> rdx "Inline stloc first use temp"
;* V71 tmp48 [V71 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Inlining Arg" <System.String>
; V72 tmp49 [V72,T89] ( 2, 2 ) ref -> r14 class-hnd single-def "Inline return value spill temp" <System.Xml.Serialization.MethodBuilderInfo>
; V73 tmp50 [V73,T44] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.MethodBuilderInfo]>
; V74 tmp51 [V74,T68] ( 3, 3 ) byref -> rax single-def "Inline stloc first use temp"
;* V75 tmp52 [V75 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.MethodBuilderInfo>
; V76 tmp53 [V76,T57] ( 2, 4 ) ref -> [rbp-0xC0] class-hnd spill-single-def "Inlining Arg" <System.__Canon[]>
; V77 tmp54 [V77,T45] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Reflection.Emit.MethodBuilder>
; V78 tmp55 [V78,T69] ( 3, 3 ) ref -> r14 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V79 tmp56 [V79 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Xml.Serialization.ArgBuilder>
; V80 tmp57 [V80,T70] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.ArgBuilder]>
; V81 tmp58 [V81,T95] ( 3, 1.50) byref -> rax single-def "Inline stloc first use temp"
;* V82 tmp59 [V82 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.ArgBuilder>
; V83 tmp60 [V83,T71] ( 3, 3 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V84 tmp61 [V84 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V85 tmp62 [V85 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V86 tmp63 [V86 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V87 tmp64 [V87,T72] ( 3, 3 ) ref -> [rbp-0xC8] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V88 tmp65 [V88 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Xml.Serialization.ArgBuilder>
; V89 tmp66 [V89,T73] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.ArgBuilder]>
; V90 tmp67 [V90,T96] ( 3, 1.50) byref -> rax single-def "Inline stloc first use temp"
;* V91 tmp68 [V91 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.ArgBuilder>
;* V92 tmp69 [V92 ] ( 0, 0 ) ref -> zero-ref
;* V93 tmp70 [V93 ] ( 0, 0 ) ref -> zero-ref
;* V94 tmp71 [V94 ] ( 0, 0 ) ref -> zero-ref
;* V95 tmp72 [V95 ] ( 0, 0 ) ref -> zero-ref
; V96 tmp73 [V96,T97] ( 3, 1.50) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.Collections.Generic.IEqualityComparer`1[System.String]>
; V97 tmp74 [V97,T16] ( 2, 16 ) ref -> rdi class-hnd exact "dup spill" <System.String>
; V98 tmp75 [V98,T21] ( 4, 14 ) ref -> rdi
; V99 tmp76 [V99,T17] ( 2, 16 ) ref -> rsi class-hnd exact "dup spill" <System.String>
; V100 tmp77 [V100,T22] ( 4, 14 ) ref -> rsi
; V101 tmp78 [V101 ] ( 1, 4 ) int -> [rbp-0x38] do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
;* V102 tmp79 [V102 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V103 tmp80 [V103,T38] ( 2, 8 ) ref -> rdi class-hnd exact "dup spill" <System.String>
; V104 tmp81 [V104,T32] ( 4, 8 ) ref -> rdi
;* V105 tmp82 [V105,T94] ( 0, 0 ) int -> zero-ref "Inline stloc first use temp"
; V106 tmp83 [V106,T46] ( 3, 6 ) ref -> rax class-hnd exact "Inline stloc first use temp" <System.Reflection.Emit.Label[]>
; V107 tmp84 [V107,T33] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
;* V108 tmp85 [V108 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
; V109 tmp86 [V109,T40] ( 2, 8 ) long -> [rbp-0x40] spill-single-def "Inlining Arg"
;* V110 tmp87 [V110 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.RuntimeTypeHandle>
; V111 tmp88 [V111,T25] ( 3, 12 ) ref -> rdi class-hnd exact "Inlining Arg" <System.RuntimeType>
;* V112 tmp89 [V112 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.RuntimeTypeHandle>
; V113 tmp90 [V113,T47] ( 3, 6 ) ref -> rdi class-hnd "Inline stloc first use temp" <System.Object[]>
; V114 tmp91 [V114,T34] ( 4, 8 ) int -> rcx "Inline stloc first use temp"
; V115 tmp92 [V115,T26] ( 3, 12 ) ref -> rax class-hnd "Inlining Arg" <System.Object>
;* V116 tmp93 [V116 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V117 tmp94 [V117 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V118 tmp95 [V118,T74] ( 3, 3 ) ref -> r13 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V119 tmp96 [V119,T105] ( 2, 1 ) ref -> rsi class-hnd single-def "Inline return value spill temp" <System.Xml.Serialization.ArgBuilder>
; V120 tmp97 [V120,T75] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.ArgBuilder]>
; V121 tmp98 [V121,T98] ( 3, 1.50) byref -> rax single-def "Inline stloc first use temp"
;* V122 tmp99 [V122 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.ArgBuilder>
;* V123 tmp100 [V123 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V124 tmp101 [V124 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V125 tmp102 [V125 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V126 tmp103 [V126,T87] ( 4, 2 ) int -> [rbp-0x44] spill-single-def "field V13.m_label (fldOffset=0x0)" P-INDEP
; V127 tmp104 [V127,T106] ( 2, 1 ) int -> [rbp-0x48] spill-single-def "field V14.m_label (fldOffset=0x0)" P-INDEP
; V128 tmp105 [V128,T35] ( 4, 8 ) int -> [rbp-0x4C] spill-single-def "field V20.m_label (fldOffset=0x0)" P-INDEP
; V129 tmp106 [V129,T41] ( 2, 8 ) int -> rsi "field V40.m_label (fldOffset=0x0)" P-INDEP
;* V130 tmp107 [V130 ] ( 0, 0 ) int -> zero-ref "field V44.m_label (fldOffset=0x0)" P-INDEP
;* V131 tmp108 [V131 ] ( 0, 0 ) int -> zero-ref "field V51.m_label (fldOffset=0x0)" P-INDEP
;* V132 tmp109 [V132 ] ( 0, 0 ) int -> zero-ref "field V61.m_label (fldOffset=0x0)" P-INDEP
;* V133 tmp110 [V133 ] ( 0, 0 ) ref -> zero-ref "field V110.m_type (fldOffset=0x0)" P-INDEP
; V134 tmp111 [V134,T58] ( 2, 4 ) ref -> rdi "field V112.m_type (fldOffset=0x0)" P-INDEP
; V135 tmp112 [V135,T48] ( 3, 6 ) ref -> rdi single-def "argument with side effect"
; V136 tmp113 [V136,T61] ( 2, 4 ) int -> rcx "argument with side effect"
; V137 tmp114 [V137,T76] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V138 tmp115 [V138,T77] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V139 tmp116 [V139,T27] ( 3, 12 ) ref -> rdi "argument with side effect"
; V140 tmp117 [V140,T39] ( 2, 8 ) ref -> rsi "argument with side effect"
; V141 tmp118 [V141,T05] ( 3, 24 ) ref -> rsi "arr expr"
; V142 tmp119 [V142,T06] ( 3, 24 ) ref -> rdi "argument with side effect"
; V143 tmp120 [V143,T07] ( 3, 24 ) ref -> rsi "arr expr"
; V144 tmp121 [V144,T18] ( 2, 16 ) ref -> rsi "argument with side effect"
; V145 tmp122 [V145,T19] ( 2, 16 ) ref -> rsi "argument with side effect"
; V146 tmp123 [V146,T20] ( 2, 16 ) ref -> [rbp-0xD0] spill-single-def "argument with side effect"
; V147 tmp124 [V147,T78] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V148 tmp125 [V148,T109] ( 2, 0 ) ref -> rsi single-def "argument with side effect"
; V149 tmp126 [V149,T79] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V150 tmp127 [V150,T90] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V151 tmp128 [V151,T91] ( 2, 2 ) ref -> r14 single-def "argument with side effect"
; V152 tmp129 [V152,T92] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V153 tmp130 [V153,T93] ( 2, 2 ) ref -> r15 single-def "argument with side effect"
; V154 tmp131 [V154,T49] ( 3, 6 ) ref -> rdi single-def "argument with side effect"
; V155 tmp132 [V155,T59] ( 2, 4 ) ref -> rsi single-def "argument with side effect"
; V156 tmp133 [V156,T60] ( 2, 4 ) ref -> r15 single-def "argument with side effect"
-; V157 cse0 [V157,T99] ( 3, 1.50) ref -> [rbp-0xD8] spill-single-def "CSE #10: conservative"
-; V158 cse1 [V158,T28] ( 3, 12 ) ref -> rdi "CSE #18: moderate"
-; V159 cse2 [V159,T29] ( 3, 12 ) ref -> rdi "CSE #19: moderate"
-; V160 cse3 [V160,T80] ( 3, 3 ) ref -> r14 "CSE #05: conservative"
-; V161 cse4 [V161,T81] ( 3, 3 ) ref -> rsi "CSE #21: conservative"
-; V162 cse5 [V162,T82] ( 3, 3 ) ref -> rdi "CSE #22: conservative"
-; V163 cse6 [V163,T100] ( 3, 1.50) ref -> rdi "CSE #07: conservative"
-; V164 cse7 [V164,T101] ( 3, 1.50) ref -> rdi "CSE #08: conservative"
-; V165 cse8 [V165,T09] ( 3, 20 ) ref -> [rbp-0xE0] spill-single-def "CSE #13: moderate"
-; V166 cse9 [V166,T30] ( 10, 8 ) ref -> [rbp-0xE8] multi-def "CSE #02: moderate"
+; V157 cse0 [V157,T99] ( 3, 1.50) ref -> [rbp-0xD8] spill-single-def "CSE #09: conservative"
+; V158 cse1 [V158,T28] ( 3, 12 ) ref -> rdi "CSE #17: moderate"
+; V159 cse2 [V159,T29] ( 3, 12 ) ref -> rdi "CSE #18: moderate"
+; V160 cse3 [V160,T80] ( 3, 3 ) ref -> r14 "CSE #04: conservative"
+; V161 cse4 [V161,T81] ( 3, 3 ) ref -> rsi "CSE #20: conservative"
+; V162 cse5 [V162,T82] ( 3, 3 ) ref -> rdi "CSE #21: conservative"
+; V163 cse6 [V163,T100] ( 3, 1.50) ref -> rdi "CSE #06: conservative"
+; V164 cse7 [V164,T101] ( 3, 1.50) ref -> rdi "CSE #07: conservative"
+; V165 cse8 [V165,T09] ( 3, 20 ) ref -> [rbp-0xE0] spill-single-def "CSE #12: moderate"
+; V166 cse9 [V166,T30] ( 10, 8 ) ref -> [rbp-0xE8] multi-def "CSE #01: moderate"
; V167 rat0 [V167,T10] ( 5, 16.50) long -> [rbp-0x58] "Widened IV V18"
; V168 rat1 [V168,T00] ( 5, 66 ) long -> [rbp-0x60] "Widened IV V105"
; V169 rat2 [V169,T03] ( 10, 36.50) long -> r14 "Widened IV V22"
;
; Lcl frame size = 216
G_M2376_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 216
lea rbp, [rsp+0x100]
xor eax, eax
mov qword ptr [rbp-0x30], rax
mov rbx, rdi
mov r15, rsi
;; size=37 bbWeight=1 PerfScore 8.50
G_M2376_IG02:
cmp byte ptr [r15+0x29], 0
je SHORT G_M2376_IG04
;; size=7 bbWeight=1 PerfScore 4.00
G_M2376_IG03:
mov rdx, gword ptr [r15+0x10]
mov rdx, gword ptr [rdx+0x08]
lea rcx, [rbp-0x30]
mov rdi, rbx
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.XmlSerializationReaderILGen:WriteHashtable(System.Xml.Serialization.EnumMapping,System.String,byref):System.String:this
call [rax]System.Xml.Serialization.XmlSerializationReaderILGen:WriteHashtable(System.Xml.Serialization.EnumMapping,System.String,byref):System.String:this
;; size=30 bbWeight=0.50 PerfScore 4.12
G_M2376_IG04:
mov rdi, gword ptr [rbx+0x08]
cmp byte ptr [rdi], dil
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
jne SHORT G_M2376_IG06
;; size=27 bbWeight=1 PerfScore 9.75
G_M2376_IG05:
xor r14, r14
jmp SHORT G_M2376_IG07
;; size=5 bbWeight=0.50 PerfScore 1.12
G_M2376_IG06:
mov r14, gword ptr [rax]
;; size=3 bbWeight=0.50 PerfScore 1.00
G_M2376_IG07:
mov rdi, gword ptr [r15+0x10]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.TypeDesc:get_CSharpName():System.String:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.TypeDesc:get_CSharpName():System.String:this
mov r13, rax
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Type]
call CORINFO_HELP_NEWSFAST
mov r12, rax
mov rdi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rdi]
lea rdi, bword ptr [r12+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.String]
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0x90], rax
- mov rdi, 0xD1FFAB1E ; global ptr
- test byte ptr [rdi], 1
- je G_M2376_IG42
- ;; size=103 bbWeight=1 PerfScore 20.25
-G_M2376_IG08:
- mov rdi, 0xD1FFAB1E ; data for System.Collections.Generic.List`1[System.String]:s_emptyArray
+ mov rdi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rdi]
lea rdi, bword ptr [rax+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [r15+0x10]
mov rax, gword ptr [rdi+0x40]
mov gword ptr [rbp-0x68], rax
mov rdi, rax
mov rsi, 0xD1FFAB1E ; 'enumType'
mov rcx, 0xD1FFAB1E ; code for System.ArgumentNullException:ThrowIfNull(System.Object,System.String)
call [rcx]System.ArgumentNullException:ThrowIfNull(System.Object,System.String)
mov rdi, gword ptr [rbp-0x68]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0xA0]
call [rax+0x18]System.Type:GetEnumUnderlyingType():System.Type:this
mov gword ptr [rbp-0x70], rax
inc dword ptr [r12+0x14]
mov rdi, gword ptr [r12+0x08]
mov ecx, dword ptr [r12+0x10]
cmp dword ptr [rdi+0x08], ecx
- ja SHORT G_M2376_IG10
- ;; size=100 bbWeight=1 PerfScore 32.50
-G_M2376_IG09:
+ ja SHORT G_M2376_IG09
+ ;; size=184 bbWeight=1 PerfScore 48.50
+G_M2376_IG08:
mov rdi, r12
mov rdx, 0xD1FFAB1E ; 'System.String'
mov gword ptr [rbp-0xE8], rdx
mov rsi, rdx
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rcx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M2376_IG11
+ jmp SHORT G_M2376_IG10
;; size=37 bbWeight=0.50 PerfScore 3.50
-G_M2376_IG10:
+G_M2376_IG09:
lea esi, [rcx+0x01]
mov dword ptr [r12+0x10], esi
movsxd rsi, ecx
mov rdx, 0xD1FFAB1E ; 'System.String'
mov rcx, rdx
mov gword ptr [rbp-0xE8], rcx
mov rdx, rcx
mov r8, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [r8]CORINFO_HELP_ARRADDR_ST
;; size=47 bbWeight=0.50 PerfScore 3.38
-G_M2376_IG11:
+G_M2376_IG10:
mov rax, gword ptr [rbp-0x90]
inc dword ptr [rax+0x14]
mov rcx, gword ptr [rax+0x08]
mov edx, dword ptr [rax+0x10]
cmp dword ptr [rcx+0x08], edx
- ja SHORT G_M2376_IG13
+ ja SHORT G_M2376_IG12
;; size=22 bbWeight=1 PerfScore 12.00
-G_M2376_IG12:
+G_M2376_IG11:
mov rdi, rax
mov rsi, 0xD1FFAB1E ; 's'
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rcx]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M2376_IG14
+ jmp SHORT G_M2376_IG13
;; size=27 bbWeight=0.50 PerfScore 2.88
-G_M2376_IG13:
+G_M2376_IG12:
lea edi, [rdx+0x01]
mov dword ptr [rax+0x10], edi
mov edi, edx
mov rdx, 0xD1FFAB1E ; 's'
mov gword ptr [rcx+8*rdi+0x10], rdx
;; size=23 bbWeight=0.50 PerfScore 1.50
-G_M2376_IG14:
+G_M2376_IG13:
mov rdi, 0xD1FFAB1E ; System.Xml.Serialization.CodeGenerator
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0x98], rax
mov rsi, gword ptr [rbx+0x68]
mov rdi, rax
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:.ctor(System.Reflection.Emit.TypeBuilder):this
call [rcx]System.Xml.Serialization.CodeGenerator:.ctor(System.Reflection.Emit.TypeBuilder):this
lea rdi, bword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x98]
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0xA0], rax
mov rdi, gword ptr [rbx+0x10]
cmp byte ptr [rdi], dil
mov rsi, r14
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rcx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M2376_IG43
+ je G_M2376_IG41
mov r14, gword ptr [rax]
mov rdi, r12
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
call [rax]System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
mov r12, rax
mov rdi, gword ptr [rbp-0x90]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
call [rax]System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
mov gword ptr [rbp-0xC0], rax
mov rcx, gword ptr [rbp-0xA0]
cmp byte ptr [rcx], cl
mov r14, gword ptr [r14+0x08]
lea rdi, bword ptr [rcx+0x10]
mov rsi, r14
call CORINFO_HELP_ASSIGN_REF
mov rdi, r14
mov esi, 64
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x70]
call [rax+0x08]System.Reflection.Emit.MethodBuilder:GetILGeneratorCore(int):System.Reflection.Emit.ILGenerator:this
mov r14, gword ptr [rbp-0xA0]
lea rdi, bword ptr [r14+0x18]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [r14+0x10]
;; size=212 bbWeight=1 PerfScore 54.00
-G_M2376_IG15:
+G_M2376_IG14:
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x50]
call [rax+0x20]System.Reflection.MethodBase:get_Attributes():int:this
test al, 16
setne cl
movzx rcx, cl
mov rsi, r12
mov rdx, gword ptr [rbp-0xC0]
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InitILGeneration(System.Type[],System.String[],ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InitILGeneration(System.Type[],System.String[],ubyte):this
mov r14, gword ptr [r15+0x30]
cmp byte ptr [r15+0x29], 0
- jne G_M2376_IG37
+ jne G_M2376_IG36
;; size=58 bbWeight=1 PerfScore 19.25
-G_M2376_IG16:
+G_M2376_IG15:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Reflection.Emit.Label]
call CORINFO_HELP_NEWSFAST
mov r13, rax
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M2376_IG44
+ je G_M2376_IG42
;; size=37 bbWeight=0.50 PerfScore 2.88
-G_M2376_IG17:
+G_M2376_IG16:
mov rdi, 0xD1FFAB1E ; data for System.Collections.Generic.List`1[System.Reflection.Emit.Label]:s_emptyArray
mov rsi, gword ptr [rdi]
lea rdi, bword ptr [r13+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Object]
call CORINFO_HELP_NEWSFAST
mov r12, rax
mov rdi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rdi]
lea rdi, bword ptr [r12+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x28]System.Reflection.Emit.ILGenerator:DefineLabel():System.Reflection.Emit.Label:this
mov dword ptr [rbp-0x44], eax
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x58]
call [rcx+0x28]System.Reflection.Emit.ILGenerator:DefineLabel():System.Reflection.Emit.Label:this
mov dword ptr [rbp-0x48], eax
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xE8]
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:GetTempLocal(System.Type):System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Serialization.CodeGenerator:GetTempLocal(System.Type):System.Reflection.Emit.LocalBuilder:this
mov gword ptr [rbp-0x78], rax
mov rcx, gword ptr [rbx+0x70]
mov gword ptr [rbp-0xC8], rcx
mov rdi, gword ptr [rcx+0x20]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 's'
mov rdx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rdx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M2376_IG46
+ je G_M2376_IG44
mov rsi, gword ptr [rax]
mov esi, dword ptr [rsi+0x18]
mov rdi, gword ptr [rbp-0xC8]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
;; size=206 bbWeight=0.50 PerfScore 30.62
-G_M2376_IG18:
+G_M2376_IG17:
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x78]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x78]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0x44]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Brfalse(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Brfalse(System.Reflection.Emit.Label):this
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.HashSet`1[System.String]
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0xA8], rax
mov rdi, 0xD1FFAB1E ; const ptr
mov rcx, gword ptr [rdi]
mov gword ptr [rbp-0xD8], rcx
lea rdi, bword ptr [rax+0x18]
mov rsi, rcx
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [rbp-0xD8]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.NonRandomizedStringEqualityComparer:GetStringComparer(System.Object):System.Collections.Generic.IEqualityComparer`1[System.String]
call [rax]System.Collections.Generic.NonRandomizedStringEqualityComparer:GetStringComparer(System.Object):System.Collections.Generic.IEqualityComparer`1[System.String]
test rax, rax
- je SHORT G_M2376_IG19
+ je SHORT G_M2376_IG18
mov rcx, gword ptr [rbp-0xA8]
lea rdi, bword ptr [rcx+0x18]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
;; size=164 bbWeight=0.50 PerfScore 23.12
-G_M2376_IG19:
+G_M2376_IG18:
mov rax, gword ptr [rbp-0xA8]
mov gword ptr [rbp-0x80], rax
xor ecx, ecx
cmp dword ptr [r14+0x08], 0
- jle G_M2376_IG33
+ jle G_M2376_IG32
;; size=24 bbWeight=0.50 PerfScore 3.12
-G_M2376_IG20:
+G_M2376_IG19:
mov qword ptr [rbp-0x58], rcx
mov rdx, gword ptr [r14+8*rcx+0x10]
mov gword ptr [rbp-0x88], rdx
mov rdi, gword ptr [rdx+0x18]
test rdi, rdi
- jne SHORT G_M2376_IG22
+ jne SHORT G_M2376_IG21
;; size=25 bbWeight=4 PerfScore 29.00
-G_M2376_IG21:
+G_M2376_IG20:
mov rdi, 0xD1FFAB1E ; ''
;; size=10 bbWeight=2 PerfScore 0.50
-G_M2376_IG22:
+G_M2376_IG21:
mov rsi, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeIdentifier:CheckValidIdentifier(System.String)
call [rsi]System.Xml.Serialization.CodeIdentifier:CheckValidIdentifier(System.String)
mov rax, gword ptr [rbp-0x88]
mov rsi, gword ptr [rax+0x10]
test rsi, rsi
- jne SHORT G_M2376_IG24
+ jne SHORT G_M2376_IG23
;; size=28 bbWeight=4 PerfScore 30.00
-G_M2376_IG23:
+G_M2376_IG22:
mov rsi, 0xD1FFAB1E ; ''
;; size=10 bbWeight=2 PerfScore 0.50
-G_M2376_IG24:
+G_M2376_IG23:
lea rdx, [rbp-0x38]
mov rdi, gword ptr [rbp-0x80]
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.HashSet`1[System.__Canon]:AddIfNotPresent(System.__Canon,byref):ubyte:this
call [rcx]System.Collections.Generic.HashSet`1[System.__Canon]:AddIfNotPresent(System.__Canon,byref):ubyte:this
test eax, eax
- je G_M2376_IG32
+ je G_M2376_IG31
;; size=28 bbWeight=4 PerfScore 24.00
-G_M2376_IG25:
+G_M2376_IG24:
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x28]System.Reflection.Emit.ILGenerator:DefineLabel():System.Reflection.Emit.Label:this
mov dword ptr [rbp-0x4C], eax
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x78]
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0xB0], rax
mov rcx, gword ptr [rbp-0x88]
mov rdi, gword ptr [rcx+0x10]
test rdi, rdi
- jne SHORT G_M2376_IG26
+ jne SHORT G_M2376_IG25
mov rdi, 0xD1FFAB1E ; ''
;; size=80 bbWeight=2 PerfScore 57.50
-G_M2376_IG26:
+G_M2376_IG25:
mov rdx, 0xD1FFAB1E ; code for System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
call [rdx]System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
mov rsi, rax
mov rdi, gword ptr [rbp-0xB0]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 2
call CORINFO_HELP_NEWARR_1_OBJ
mov gword ptr [rbp-0xB8], rax
mov rcx, gword ptr [rbp-0xE8]
mov gword ptr [rax+0x10], rcx
mov gword ptr [rbp-0xE8], rcx
mov gword ptr [rax+0x18], rcx
mov rdi, 0xD1FFAB1E ; 'op_Equality'
mov rsi, 0xD1FFAB1E ; 'name'
mov rdx, 0xD1FFAB1E ; code for System.ArgumentNullException:ThrowIfNull(System.Object,System.String)
call [rdx]System.ArgumentNullException:ThrowIfNull(System.Object,System.String)
mov rdi, gword ptr [rbp-0xB8]
mov rax, 0xD1FFAB1E ; 'types'
mov gword ptr [rbp-0xE0], rax
mov rsi, rax
mov rcx, 0xD1FFAB1E ; code for System.ArgumentNullException:ThrowIfNull(System.Object,System.String)
call [rcx]System.ArgumentNullException:ThrowIfNull(System.Object,System.String)
xor eax, eax
;; size=158 bbWeight=2 PerfScore 54.00
-G_M2376_IG27:
+G_M2376_IG26:
mov rcx, gword ptr [rbp-0xB8]
mov qword ptr [rbp-0x60], rax
mov rdi, gword ptr [rcx+8*rax+0x10]
mov rsi, gword ptr [rbp-0xE0]
mov rdx, 0xD1FFAB1E ; code for System.ArgumentNullException:ThrowIfNull(System.Object,System.String)
call [rdx]System.ArgumentNullException:ThrowIfNull(System.Object,System.String)
mov rdi, qword ptr [rbp-0x60]
inc edi
cmp edi, 2
mov rax, rdi
- jl SHORT G_M2376_IG27
+ jl SHORT G_M2376_IG26
;; size=49 bbWeight=16 PerfScore 176.00
-G_M2376_IG28:
+G_M2376_IG27:
mov rdi, gword ptr [rbp-0xB8]
mov gword ptr [rsp], rdi
xor rdi, rdi
mov gword ptr [rsp+0x08], rdi
mov rdi, 0xD1FFAB1E ; 'System.String'
mov rsi, 0xD1FFAB1E ; 'op_Equality'
mov edx, -1
mov ecx, 56
xor r8, r8
mov r9d, 3
mov rax, 0xD1FFAB1E ; code for System.RuntimeType:GetMethodImplCommon(System.String,int,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.RuntimeType:GetMethodImplCommon(System.String,int,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov rsi, rax
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0x4C]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Brtrue(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Brtrue(System.Reflection.Emit.Label):this
inc dword ptr [r13+0x14]
mov rax, gword ptr [r13+0x08]
mov ecx, dword ptr [r13+0x10]
cmp dword ptr [rax+0x08], ecx
- ja SHORT G_M2376_IG29
+ ja SHORT G_M2376_IG28
mov rdi, r13
mov esi, dword ptr [rbp-0x4C]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Emit.Label]:AddWithResize(System.Reflection.Emit.Label):this
call [rax]System.Collections.Generic.List`1[System.Reflection.Emit.Label]:AddWithResize(System.Reflection.Emit.Label):this
- jmp SHORT G_M2376_IG30
+ jmp SHORT G_M2376_IG29
;; size=148 bbWeight=2 PerfScore 86.50
-G_M2376_IG29:
+G_M2376_IG28:
lea edi, [rcx+0x01]
mov dword ptr [r13+0x10], edi
mov edi, ecx
mov esi, dword ptr [rbp-0x4C]
mov dword ptr [rax+4*rdi+0x10], esi
;; size=16 bbWeight=2 PerfScore 7.50
-G_M2376_IG30:
+G_M2376_IG29:
mov rdi, gword ptr [r15+0x10]
mov rdi, gword ptr [rdi+0x40]
mov rcx, gword ptr [rbp-0x88]
mov rax, qword ptr [rcx+0x20]
mov qword ptr [rbp-0x40], rax
mov rcx, 0xD1FFAB1E ; code for System.Enum:ValidateRuntimeType(System.Type):System.RuntimeType
call [rcx]System.Enum:ValidateRuntimeType(System.Type):System.RuntimeType
mov rdi, rax
cmp byte ptr [rdi], dil
mov rsi, qword ptr [rbp-0x40]
mov rax, 0xD1FFAB1E ; code for System.Enum:InternalBoxEnum(System.RuntimeTypeHandle,long):System.Object
call [rax]System.Enum:InternalBoxEnum(System.RuntimeTypeHandle,long):System.Object
inc dword ptr [r12+0x14]
mov rdi, gword ptr [r12+0x08]
mov ecx, dword ptr [r12+0x10]
cmp dword ptr [rdi+0x08], ecx
- ja SHORT G_M2376_IG31
+ ja SHORT G_M2376_IG30
mov rdi, r12
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M2376_IG32
+ jmp SHORT G_M2376_IG31
;; size=97 bbWeight=2 PerfScore 71.00
-G_M2376_IG31:
+G_M2376_IG30:
lea esi, [rcx+0x01]
mov dword ptr [r12+0x10], esi
movsxd rsi, ecx
mov rdx, rax
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
;; size=26 bbWeight=2 PerfScore 10.50
-G_M2376_IG32:
+G_M2376_IG31:
mov rdi, qword ptr [rbp-0x58]
inc edi
cmp dword ptr [r14+0x08], edi
mov rcx, rdi
- jg G_M2376_IG20
+ jg G_M2376_IG19
;; size=19 bbWeight=4 PerfScore 22.00
-G_M2376_IG33:
+G_M2376_IG32:
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0x44]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
xor r14d, r14d
cmp dword ptr [r13+0x10], 0
- jle G_M2376_IG35
+ jle G_M2376_IG34
;; size=35 bbWeight=0.50 PerfScore 6.75
-G_M2376_IG34:
+G_M2376_IG33:
mov rdi, gword ptr [rbx+0x70]
cmp r14d, dword ptr [r13+0x10]
- jae G_M2376_IG45
+ jae G_M2376_IG43
mov rsi, gword ptr [r13+0x08]
cmp r14d, dword ptr [rsi+0x08]
- jae G_M2376_IG47
+ jae G_M2376_IG45
mov esi, dword ptr [rsi+4*r14+0x10]
mov rdi, gword ptr [rdi+0x18]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
cmp r14d, dword ptr [r12+0x10]
- jae G_M2376_IG45
+ jae G_M2376_IG43
mov rsi, gword ptr [r12+0x08]
cmp r14d, dword ptr [rsi+0x08]
- jae G_M2376_IG47
+ jae G_M2376_IG45
mov rsi, gword ptr [rsi+8*r14+0x10]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(System.Object):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldc(System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov gword ptr [rbp-0xD0], rdi
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
mov rsi, rax
mov rdi, gword ptr [rbp-0xD0]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rdi+0x74]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
inc r14d
cmp r14d, dword ptr [r13+0x10]
- jl G_M2376_IG34
+ jl G_M2376_IG33
;; size=175 bbWeight=4 PerfScore 274.00
-G_M2376_IG35:
+G_M2376_IG34:
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 2
call CORINFO_HELP_NEWARR_1_OBJ
mov r14, gword ptr [rbp-0xE8]
mov gword ptr [rax+0x10], r14
mov r9, 0xD1FFAB1E ; 'System.Type'
mov gword ptr [rax+0x18], r9
xor r9, r9
mov gword ptr [rsp], r9
mov r9, rax
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'CreateUnknownConstantException'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov r14, rax
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov esi, dword ptr [rbp-0x44]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov r13, gword ptr [rbx+0x70]
mov rdi, gword ptr [r13+0x20]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 's'
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M2376_IG46
+ je G_M2376_IG44
mov rsi, gword ptr [rax]
mov esi, dword ptr [rsi+0x18]
mov rdi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rsi, gword ptr [r15+0x10]
mov rsi, gword ptr [rsi+0x40]
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(System.Object):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldc(System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Throw():this
;; size=268 bbWeight=0.50 PerfScore 36.88
-G_M2376_IG36:
+G_M2376_IG35:
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Throw():this
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov esi, dword ptr [rbp-0x48]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
- jmp G_M2376_IG40
+ jmp G_M2376_IG39
;; size=30 bbWeight=0.50 PerfScore 10.00
-G_M2376_IG37:
+G_M2376_IG36:
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 3
call CORINFO_HELP_NEWARR_1_OBJ
mov r14, gword ptr [rbp-0xE8]
mov gword ptr [rax+0x10], r14
mov r9, 0xD1FFAB1E ; 'System.Collections.Hashtable'
mov gword ptr [rax+0x18], r9
mov gword ptr [rax+0x20], r14
xor r9, r9
mov gword ptr [rsp], r9
mov r9, rax
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationReader'
mov rsi, 0xD1FFAB1E ; 'ToEnum'
mov edx, 56
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov r15, rax
mov r14, gword ptr [rbx+0x70]
mov rdi, gword ptr [r14+0x20]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 's'
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M2376_IG46
+ je G_M2376_IG44
mov rsi, gword ptr [rax]
mov esi, dword ptr [rsi+0x18]
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x30]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov r14, gword ptr [rbx+0x70]
mov rdi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
call [rax]System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
;; size=231 bbWeight=0.50 PerfScore 27.25
-G_M2376_IG38:
+G_M2376_IG37:
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, 0xD1FFAB1E ; 'System.Int64'
- mov r13, gword ptr [rbp-0x70]
- cmp r13, rdi
- je SHORT G_M2376_IG39
+ mov r15, gword ptr [rbp-0x70]
+ cmp r15, rdi
+ je SHORT G_M2376_IG38
mov rdi, gword ptr [rbx+0x70]
cmp byte ptr [rdi], dil
- mov rdx, r13
+ mov rdx, r15
mov rsi, 0xD1FFAB1E ; 'System.Int64'
xor ecx, ecx
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InternalConvert(System.Type,System.Type,ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InternalConvert(System.Type,System.Type,ubyte):this
;; size=94 bbWeight=0.50 PerfScore 13.38
-G_M2376_IG39:
+G_M2376_IG38:
mov rdi, gword ptr [rbx+0x70]
mov r15, rdi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
mov rsi, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rdi+0x74]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
;; size=58 bbWeight=0.50 PerfScore 9.75
-G_M2376_IG40:
+G_M2376_IG39:
mov rsi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rsi+0x18]
mov esi, dword ptr [rsi+0x74]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
mov r15, rdi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:get_ReturnLocal():System.Reflection.Emit.LocalBuilder:this
mov rsi, rax
mov rdi, r15
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:EndMethod():System.Reflection.Emit.MethodBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:EndMethod():System.Reflection.Emit.MethodBuilder:this
nop
;; size=79 bbWeight=1 PerfScore 33.75
-G_M2376_IG41:
+G_M2376_IG40:
add rsp, 216
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
-G_M2376_IG42:
- mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.String]
- call CORINFO_HELP_GET_GCSTATIC_BASE
- mov rax, gword ptr [rbp-0x90]
- jmp G_M2376_IG08
- ;; size=27 bbWeight=0 PerfScore 0.00
-G_M2376_IG43:
+G_M2376_IG41:
mov rsi, r14
mov rdi, 0xD1FFAB1E ; System.ThrowHelper:ThrowKeyNotFoundException[System.String](System.String)
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
call [rax]System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
int3
;; size=26 bbWeight=0 PerfScore 0.00
-G_M2376_IG44:
+G_M2376_IG42:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Reflection.Emit.Label]
call CORINFO_HELP_GET_GCSTATIC_BASE
- jmp G_M2376_IG17
+ jmp G_M2376_IG16
;; size=20 bbWeight=0 PerfScore 0.00
-G_M2376_IG45:
+G_M2376_IG43:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M2376_IG46:
+G_M2376_IG44:
mov edi, 0xD753
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rsi, rax
mov rdi, 0xD1FFAB1E ; System.ThrowHelper:ThrowKeyNotFoundException[System.String](System.String)
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
call [rax]System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
int3
;; size=46 bbWeight=0 PerfScore 0.00
-G_M2376_IG47:
+G_M2376_IG45:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 2989, prolog size 31, PerfScore 1222.50, instruction count 634, allocated bytes for code 2989 (MethodHash=d0f0f6b7) for method System.Xml.Serialization.XmlSerializationReaderILGen:WriteEnumMethod(System.Xml.Serialization.EnumMapping):this (FullOpts)
+; Total bytes of code 2943, prolog size 31, PerfScore 1218.25, instruction count 627, allocated bytes for code 2943 (MethodHash=d0f0f6b7) for method System.Xml.Serialization.XmlSerializationReaderILGen:WriteEnumMethod(System.Xml.Serialization.EnumMapping):this (FullOpts)
-39 (-0.90 % of base) - System.Xml.Serialization.XmlSerializationWriterILGen:WriteEnumMethod(System.Xml.Serialization.EnumMapping):this
; Assembly listing for method System.Xml.Serialization.XmlSerializationWriterILGen:WriteEnumMethod(System.Xml.Serialization.EnumMapping):this (FullOpts)
; Emitting BLENDED_CODE for X86 with AVX512 - Unix
; FullOpts code
; optimized code
; rbp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 81 single block inlinees; 23 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 66,101 ) ref -> rbx this class-hnd single-def <System.Xml.Serialization.XmlSerializationWriterILGen>
; V01 arg1 [V01,T34] ( 11, 9.50) ref -> r15 class-hnd single-def <System.Xml.Serialization.EnumMapping>
; V02 loc0 [V02,T113] ( 4, 2 ) ref -> r14 ld-addr-op class-hnd <System.String>
;* V03 loc1 [V03 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def <System.Collections.Generic.List`1[System.Type]>
;* V04 loc2 [V04 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def <System.Collections.Generic.List`1[System.String]>
; V05 loc3 [V05,T35] ( 6, 11.50) ref -> r13 class-hnd single-def <System.Reflection.Emit.LocalBuilder>
; V06 loc4 [V06,T27] ( 5, 14 ) ref -> r14 class-hnd exact single-def <System.Xml.Serialization.ConstantMapping[]>
; V07 loc5 [V07,T67] ( 2, 4.50) ref -> [rbp-0x90] class-hnd exact spill-single-def <System.Collections.Generic.HashSet`1[long]>
; V08 loc6 [V08,T01] ( 15, 37.50) ref -> [rbp-0x98] class-hnd exact spill-single-def <System.Collections.Generic.List`1[System.Reflection.Emit.Label]>
; V09 loc7 [V09,T04] ( 11, 28.50) ref -> [rbp-0xA0] class-hnd exact spill-single-def <System.Collections.Generic.List`1[System.String]>
;* V10 loc8 [V10 ] ( 0, 0 ) struct ( 8) zero-ref <System.Reflection.Emit.Label>
;* V11 loc9 [V11 ] ( 0, 0 ) struct ( 8) zero-ref <System.Reflection.Emit.Label>
; V12 loc10 [V12,T79] ( 3, 3 ) ref -> [rbp-0xA8] class-hnd spill-single-def <System.Reflection.Emit.LocalBuilder>
-;* V13 loc11 [V13,T151] ( 0, 0 ) int -> zero-ref
+;* V13 loc11 [V13,T150] ( 0, 0 ) int -> zero-ref
; V14 loc12 [V14,T30] ( 4, 12 ) ref -> [rbp-0xB0] class-hnd exact spill-single-def <System.Xml.Serialization.ConstantMapping>
;* V15 loc13 [V15 ] ( 0, 0 ) struct ( 8) zero-ref <System.Reflection.Emit.Label>
; V16 loc14 [V16,T61] ( 4, 5.50) ref -> [rbp-0xB8] class-hnd spill-single-def <System.Reflection.Emit.LocalBuilder>
; V17 loc15 [V17,T62] ( 4, 5.50) ref -> [rbp-0xC0] class-hnd spill-single-def <System.Reflection.Emit.LocalBuilder>
; V18 loc16 [V18,T138] ( 2, 1 ) ref -> rsi class-hnd single-def <System.Reflection.MethodInfo>
-;* V19 loc17 [V19,T152] ( 0, 0 ) int -> zero-ref
-;* V20 loc18 [V20,T153] ( 0, 0 ) int -> zero-ref
+;* V19 loc17 [V19,T151] ( 0, 0 ) int -> zero-ref
+;* V20 loc18 [V20,T152] ( 0, 0 ) int -> zero-ref
; V21 loc19 [V21,T42] ( 2, 8 ) ref -> [rbp-0xC8] class-hnd exact spill-single-def <System.Xml.Serialization.ConstantMapping>
-;* V22 loc20 [V22,T154] ( 0, 0 ) int -> zero-ref
+;* V22 loc20 [V22,T153] ( 0, 0 ) int -> zero-ref
; V23 loc21 [V23,T43] ( 2, 8 ) ref -> [rbp-0xD0] class-hnd exact spill-single-def <System.Xml.Serialization.ConstantMapping>
; V24 loc22 [V24,T139] ( 2, 1 ) ref -> r14 class-hnd single-def <System.Reflection.MethodInfo>
; V25 loc23 [V25,T140] ( 2, 1 ) ref -> r12 class-hnd single-def <System.Reflection.MethodInfo>
; V26 loc24 [V26,T141] ( 2, 1 ) ref -> [rbp-0xD8] class-hnd spill-single-def <System.Reflection.MethodInfo>
;* V27 loc25 [V27 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def <System.Reflection.Emit.LocalBuilder>
-;* V28 loc26 [V28,T155] ( 0, 0 ) int -> zero-ref
+;* V28 loc26 [V28,T154] ( 0, 0 ) int -> zero-ref
; V29 OutArgs [V29 ] ( 1, 1 ) struct ( 8) [rsp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V30 tmp1 [V30,T15] ( 9, 16 ) ref -> r13 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Type]>
; V31 tmp2 [V31,T16] ( 9, 16 ) ref -> r12 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.String]>
; V32 tmp3 [V32,T52] ( 3, 6 ) ref -> [rbp-0xE0] class-hnd exact spill-single-def "NewObj constructor temp" <System.Xml.Serialization.CodeGenerator>
; V33 tmp4 [V33,T29] ( 6, 12 ) ref -> [rbp-0xE8] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V34 tmp5 [V34 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.RuntimeType>
;* V35 tmp6 [V35 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.Xml.Serialization.MethodBuilderInfo>
; V36 tmp7 [V36,T71] ( 2, 4 ) ref -> r13 class-hnd single-def "impAppendStmt" <System.Type[]>
;* V37 tmp8 [V37 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "NewObj constructor temp" <System.Collections.Generic.HashSet`1[long]>
; V38 tmp9 [V38,T80] ( 3, 3 ) ref -> [rbp-0xF0] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.Label]>
; V39 tmp10 [V39,T81] ( 3, 3 ) ref -> [rbp-0xF8] class-hnd exact spill-single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.String]>
; V40 tmp11 [V40,T63] ( 5, 5 ) ref -> [rbp-0x100] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
; V41 tmp12 [V41,T44] ( 2, 8 ) ref -> [rbp-0x108] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
; V42 tmp13 [V42,T45] ( 2, 8 ) ref -> rdi class-hnd "impAppendStmt" <System.Type>
; V43 tmp14 [V43,T17] ( 2, 16 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V44 tmp15 [V44 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
; V45 tmp16 [V45,T18] ( 2, 16 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
; V46 tmp17 [V46,T82] ( 3, 3 ) ref -> rax class-hnd exact single-def "dup spill" <System.Type[]>
;* V47 tmp18 [V47 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
;* V48 tmp19 [V48 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
; V49 tmp20 [V49,T68] ( 4, 4 ) ref -> rax class-hnd exact single-def "dup spill" <System.Type[]>
;* V50 tmp21 [V50 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
;* V51 tmp22 [V51 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V52 tmp23 [V52 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
; V53 tmp24 [V53,T83] ( 3, 3 ) ref -> rdi class-hnd exact single-def "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V54 tmp25 [V54 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
; V55 tmp26 [V55,T19] ( 2, 16 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V56 tmp27 [V56 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.Reflection.Emit.Label>
; V57 tmp28 [V57,T20] ( 2, 16 ) ref -> rdi class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
; V58 tmp29 [V58,T84] ( 3, 3 ) ref -> rax class-hnd exact single-def "Single-def Box Helper" <System.Int32>
; V59 tmp30 [V59,T115] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impImportAndPushBox" <System.Xml.Serialization.CodeGenerator>
;* V60 tmp31 [V60 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impImportAndPushBox" <System.RuntimeType>
; V61 tmp32 [V61,T21] ( 2, 16 ) ref -> [rbp-0x110] class-hnd exact spill-single-def "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
; V62 tmp33 [V62,T85] ( 3, 3 ) ref -> rax class-hnd exact single-def "Single-def Box Helper" <System.Int32>
; V63 tmp34 [V63,T116] ( 2, 2 ) ref -> rdi class-hnd exact single-def "impImportAndPushBox" <System.Xml.Serialization.CodeGenerator>
;* V64 tmp35 [V64 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impImportAndPushBox" <System.RuntimeType>
;* V65 tmp36 [V65 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
;* V66 tmp37 [V66 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.Xml.Serialization.CodeGenerator>
; V67 tmp38 [V67,T51] ( 6, 6 ) ref -> rax class-hnd exact single-def "dup spill" <System.Type[]>
;* V68 tmp39 [V68 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "impAppendStmt" <System.RuntimeType>
;* V69 tmp40 [V69 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V70 tmp41 [V70 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V71 tmp42 [V71 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V72 tmp43 [V72 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Strict ordering of exceptions for Array store" <System.RuntimeType>
;* V73 tmp44 [V73 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V74 tmp45 [V74,T53] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.Xml.Serialization.TypeMapping,System.String]>
; V75 tmp46 [V75,T109] ( 3, 2.50) byref -> rax single-def "Inline stloc first use temp"
;* V76 tmp47 [V76 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
; V77 tmp48 [V77,T110] ( 3, 2.50) ref -> rdi class-hnd single-def "Inline stloc first use temp" <System.Type[]>
; V78 tmp49 [V78,T77] ( 4, 3 ) int -> rax "Inline stloc first use temp"
; V79 tmp50 [V79,T70] ( 3, 4 ) ref -> rdx class-hnd single-def "Inlining Arg" <System.Type>
; V80 tmp51 [V80,T111] ( 3, 2.50) ref -> rax class-hnd single-def "Inline stloc first use temp" <System.String[]>
; V81 tmp52 [V81,T78] ( 4, 3 ) int -> rcx "Inline stloc first use temp"
;* V82 tmp53 [V82 ] ( 0, 0 ) ref -> zero-ref class-hnd exact single-def "Inlining Arg" <System.String>
; V83 tmp54 [V83,T117] ( 2, 2 ) ref -> r14 class-hnd single-def "Inline return value spill temp" <System.Xml.Serialization.MethodBuilderInfo>
; V84 tmp55 [V84,T54] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.MethodBuilderInfo]>
; V85 tmp56 [V85,T86] ( 3, 3 ) byref -> rax single-def "Inline stloc first use temp"
;* V86 tmp57 [V86 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.MethodBuilderInfo>
; V87 tmp58 [V87,T72] ( 2, 4 ) ref -> r12 class-hnd single-def "Inlining Arg" <System.__Canon[]>
; V88 tmp59 [V88,T55] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Reflection.Emit.MethodBuilder>
;* V89 tmp60 [V89 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
; V90 tmp61 [V90,T37] ( 5, 8 ) ref -> r14 class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V91 tmp62 [V91,T76] ( 4, 3 ) ref -> r13 ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
;* V92 tmp63 [V92,T146] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
;* V93 tmp64 [V93 ] ( 0, 0 ) struct (16) zero-ref multireg-arg ld-addr-op "NewObj constructor temp" <System.ValueTuple`2[System.Type,System.String]>
;* V94 tmp65 [V94 ] ( 0, 0 ) struct (16) zero-ref "Inline stloc first use temp" <System.ValueTuple`2[System.Type,System.String]>
; V95 tmp66 [V95,T114] ( 3, 1.50) ref -> r12 ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Collections.Generic.Queue`1[System.Reflection.Emit.LocalBuilder]>
;* V96 tmp67 [V96,T147] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V97 tmp68 [V97,T56] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.ValueTuple`2[System.Type,System.String],System.Collections.Generic.Queue`1[System.Reflection.Emit.LocalBuilder]]>
; V98 tmp69 [V98,T112] ( 3, 2.50) byref -> rax single-def "Inline stloc first use temp"
;* V99 tmp70 [V99 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inlining Arg" <System.Collections.Generic.Queue`1[System.Reflection.Emit.LocalBuilder]>
; V100 tmp71 [V100,T73] ( 2, 4 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
;* V101 tmp72 [V101 ] ( 0, 0 ) ref -> zero-ref class-hnd single-def "Inlining Arg" <System.Reflection.Emit.LocalBuilder>
; V102 tmp73 [V102,T57] ( 3, 6 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
;* V103 tmp74 [V103 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V104 tmp75 [V104 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V105 tmp76 [V105 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
; V106 tmp77 [V106,T142] ( 2, 1 ) ref -> rax class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
; V107 tmp78 [V107,T87] ( 3, 3 ) ref -> [rbp-0x118] class-hnd spill-single-def "Inlining Arg" <System.Type>
; V108 tmp79 [V108 ] ( 5, 2.50) ref -> [rbp-0x30] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
; V109 tmp80 [V109,T118] ( 2, 2 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
; V110 tmp81 [V110,T119] ( 2, 2 ) ref -> rdx class-hnd single-def "Inlining Arg" <System.Reflection.Emit.LocalBuilder>
; V111 tmp82 [V111,T88] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
; V112 tmp83 [V112,T89] ( 3, 3 ) ref -> [rbp-0x120] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V113 tmp84 [V113 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Xml.Serialization.ArgBuilder>
; V114 tmp85 [V114,T90] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.ArgBuilder]>
; V115 tmp86 [V115,T133] ( 3, 1.50) byref -> rax single-def "Inline stloc first use temp"
;* V116 tmp87 [V116 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.ArgBuilder>
; V117 tmp88 [V117,T26] ( 2, 16 ) long -> rsi "Inlining Arg"
; V118 tmp89 [V118 ] ( 1, 4 ) int -> [rbp-0x38] do-not-enreg[X] addr-exposed ld-addr-op "Inline ldloca(s) first use temp"
;* V119 tmp90 [V119 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
;* V120 tmp91 [V120 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
; V121 tmp92 [V121,T48] ( 2, 8 ) long -> [rbp-0x40] spill-single-def "Inlining Arg"
;* V122 tmp93 [V122 ] ( 0, 0 ) struct ( 8) zero-ref "spilled call-like call argument" <System.RuntimeTypeHandle>
; V123 tmp94 [V123,T31] ( 3, 12 ) ref -> rdi class-hnd exact "Inlining Arg" <System.RuntimeType>
;* V124 tmp95 [V124 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.RuntimeTypeHandle>
; V125 tmp96 [V125,T58] ( 3, 6 ) ref -> rcx class-hnd exact "Inline stloc first use temp" <System.Reflection.Emit.Label[]>
; V126 tmp97 [V126,T39] ( 4, 8 ) int -> rdx "Inline stloc first use temp"
; V127 tmp98 [V127,T46] ( 2, 8 ) ref -> rdi class-hnd exact "dup spill" <System.String>
; V128 tmp99 [V128,T38] ( 4, 8 ) ref -> rdi
; V129 tmp100 [V129,T59] ( 3, 6 ) ref -> rdx class-hnd "Inline stloc first use temp" <System.String[]>
; V130 tmp101 [V130,T40] ( 4, 8 ) int -> r8 "Inline stloc first use temp"
; V131 tmp102 [V131,T32] ( 3, 12 ) ref -> rax class-hnd exact "Inlining Arg" <System.String>
;* V132 tmp103 [V132 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V133 tmp104 [V133,T69] ( 4, 4 ) ref -> [rbp-0x128] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V134 tmp105 [V134,T134] ( 3, 1.50) ref -> [rbp-0x130] class-hnd exact spill-single-def "Inline stloc first use temp" <System.Xml.Serialization.ArgBuilder>
;* V135 tmp106 [V135 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline return value spill temp" <System.Xml.Serialization.ArgBuilder>
; V136 tmp107 [V136,T91] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.ArgBuilder]>
; V137 tmp108 [V137,T135] ( 3, 1.50) byref -> rax single-def "Inline stloc first use temp"
;* V138 tmp109 [V138 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.ArgBuilder>
; V139 tmp110 [V139,T120] ( 2, 2 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Type>
; V140 tmp111 [V140,T143] ( 2, 1 ) ref -> rax class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
; V141 tmp112 [V141,T64] ( 5, 5 ) ref -> [rbp-0x138] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V142 tmp113 [V142 ] ( 5, 2.50) ref -> [rbp-0x48] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
; V143 tmp114 [V143,T121] ( 2, 2 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
; V144 tmp115 [V144,T122] ( 2, 2 ) ref -> rdx class-hnd single-def "Inlining Arg" <System.Reflection.Emit.LocalBuilder>
; V145 tmp116 [V145,T92] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
; V146 tmp117 [V146,T22] ( 2, 16 ) ref -> rdi class-hnd exact "dup spill" <System.String>
; V147 tmp118 [V147,T28] ( 4, 14 ) ref -> rdi
; V148 tmp119 [V148,T144] ( 2, 1 ) ref -> rax class-hnd single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
; V149 tmp120 [V149,T65] ( 5, 5 ) ref -> [rbp-0x140] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V150 tmp121 [V150 ] ( 5, 2.50) ref -> [rbp-0x50] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
; V151 tmp122 [V151,T123] ( 2, 2 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
; V152 tmp123 [V152,T124] ( 2, 2 ) ref -> rdx class-hnd single-def "Inlining Arg" <System.Reflection.Emit.LocalBuilder>
; V153 tmp124 [V153,T93] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
;* V154 tmp125 [V154 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V155 tmp126 [V155 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
; V156 tmp127 [V156,T125] ( 2, 2 ) ref -> r9 class-hnd exact single-def "Inlining Arg" <System.Type[]>
;* V157 tmp128 [V157 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V158 tmp129 [V158,T94] ( 3, 3 ) ref -> [rbp-0x148] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V159 tmp130 [V159,T145] ( 2, 1 ) ref -> rsi class-hnd single-def "Inline return value spill temp" <System.Xml.Serialization.ArgBuilder>
; V160 tmp131 [V160,T95] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Xml.Serialization.ArgBuilder]>
; V161 tmp132 [V161,T136] ( 3, 1.50) byref -> rax single-def "Inline stloc first use temp"
;* V162 tmp133 [V162 ] ( 0, 0 ) ref -> zero-ref ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Xml.Serialization.ArgBuilder>
;* V163 tmp134 [V163 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
; V164 tmp135 [V164,T126] ( 2, 2 ) ref -> rsi class-hnd single-def "Inlining Arg" <System.Type>
; V165 tmp136 [V165,T137] ( 3, 1.50) ref -> [rbp-0x150] class-hnd spill-single-def "Inline return value spill temp" <System.Reflection.Emit.LocalBuilder>
; V166 tmp137 [V166,T66] ( 5, 5 ) ref -> [rbp-0x158] class-hnd exact spill-single-def "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V167 tmp138 [V167 ] ( 5, 2.50) ref -> [rbp-0x58] do-not-enreg[X] must-init addr-exposed ld-addr-op class-hnd "Inline ldloca(s) first use temp" <System.Reflection.Emit.LocalBuilder>
; V168 tmp139 [V168,T127] ( 2, 2 ) ref -> rdi class-hnd exact single-def "Inlining Arg" <System.Xml.Serialization.LocalScope>
; V169 tmp140 [V169,T128] ( 2, 2 ) ref -> rdx class-hnd single-def "Inlining Arg" <System.Reflection.Emit.LocalBuilder>
; V170 tmp141 [V170,T96] ( 3, 3 ) ref -> rdi class-hnd single-def "Inlining Arg" <System.Collections.Generic.Dictionary`2[System.String,System.Reflection.Emit.LocalBuilder]>
;* V171 tmp142 [V171 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.TypeDesc>
;* V172 tmp143 [V172 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.String>
;* V173 tmp144 [V173 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Xml.Serialization.CodeGenerator>
; V174 tmp145 [V174,T108] ( 5, 2.50) int -> [rbp-0x5C] spill-single-def "field V10.m_label (fldOffset=0x0)" P-INDEP
; V175 tmp146 [V175,T36] ( 5, 9.50) int -> [rbp-0x60] spill-single-def "field V11.m_label (fldOffset=0x0)" P-INDEP
; V176 tmp147 [V176,T41] ( 4, 8 ) int -> [rbp-0x64] spill-single-def "field V15.m_label (fldOffset=0x0)" P-INDEP
; V177 tmp148 [V177,T49] ( 2, 8 ) int -> rsi "field V44.m_label (fldOffset=0x0)" P-INDEP
; V178 tmp149 [V178,T50] ( 2, 8 ) int -> rsi "field V56.m_label (fldOffset=0x0)" P-INDEP
;* V179 tmp150 [V179,T148] ( 0, 0 ) ref -> zero-ref single-def "field V93.Item1 (fldOffset=0x0)" P-INDEP
;* V180 tmp151 [V180,T149] ( 0, 0 ) ref -> zero-ref single-def "field V93.Item2 (fldOffset=0x8)" P-INDEP
;* V181 tmp152 [V181 ] ( 0, 0 ) ref -> zero-ref single-def "field V94.Item1 (fldOffset=0x0)" P-INDEP
;* V182 tmp153 [V182 ] ( 0, 0 ) ref -> zero-ref single-def "field V94.Item2 (fldOffset=0x8)" P-INDEP
;* V183 tmp154 [V183 ] ( 0, 0 ) ref -> zero-ref "field V122.m_type (fldOffset=0x0)" P-INDEP
; V184 tmp155 [V184,T74] ( 2, 4 ) ref -> rdi "field V124.m_type (fldOffset=0x0)" P-INDEP
; V185 tmp156 [V185,T60] ( 3, 6 ) ref -> rdi single-def "argument with side effect"
; V186 tmp157 [V186,T75] ( 2, 4 ) int -> rcx "argument with side effect"
; V187 tmp158 [V187,T97] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V188 tmp159 [V188,T98] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V189 tmp160 [V189,T99] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V190 tmp161 [V190,T100] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V191 tmp162 [V191,T33] ( 3, 12 ) ref -> rdi "argument with side effect"
; V192 tmp163 [V192,T47] ( 2, 8 ) ref -> rsi "argument with side effect"
; V193 tmp164 [V193,T05] ( 3, 24 ) ref -> rsi "arr expr"
; V194 tmp165 [V194,T06] ( 3, 24 ) ref -> rdi "argument with side effect"
; V195 tmp166 [V195,T07] ( 3, 24 ) ref -> rsi "arr expr"
; V196 tmp167 [V196,T23] ( 2, 16 ) ref -> rsi "argument with side effect"
; V197 tmp168 [V197,T08] ( 3, 24 ) ref -> rsi "arr expr"
; V198 tmp169 [V198,T24] ( 2, 16 ) ref -> rsi "argument with side effect"
; V199 tmp170 [V199,T09] ( 3, 24 ) ref -> rsi "arr expr"
; V200 tmp171 [V200,T10] ( 3, 24 ) ref -> rdi "argument with side effect"
; V201 tmp172 [V201,T101] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V202 tmp173 [V202,T102] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
-; V203 tmp174 [V203,T156] ( 2, 0 ) ref -> rsi single-def "argument with side effect"
+; V203 tmp174 [V203,T155] ( 2, 0 ) ref -> rsi single-def "argument with side effect"
; V204 tmp175 [V204,T103] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V205 tmp176 [V205,T129] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V206 tmp177 [V206,T130] ( 2, 2 ) ref -> r14 single-def "argument with side effect"
; V207 tmp178 [V207,T104] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V208 tmp179 [V208,T25] ( 2, 16 ) ref -> rsi "argument with side effect"
; V209 tmp180 [V209,T105] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
; V210 tmp181 [V210,T131] ( 2, 2 ) ref -> rsi single-def "argument with side effect"
; V211 tmp182 [V211,T132] ( 2, 2 ) ref -> r14 single-def "argument with side effect"
; V212 tmp183 [V212,T106] ( 3, 3 ) ref -> rdi single-def "argument with side effect"
-;* V213 cse0 [V213,T150] ( 0, 0 ) byref -> zero-ref "CSE #08: conservative"
-; V214 cse1 [V214,T107] ( 3, 3 ) ref -> r14 "CSE #04: conservative"
-; V215 cse2 [V215,T13] ( 10, 16.50) int -> r12 "CSE #11: moderate"
-; V216 rat0 [V216,T14] ( 5, 16.50) long -> [rbp-0x70] "Widened IV V13"
-; V217 rat1 [V217,T02] ( 10, 36.50) long -> r12 "Widened IV V28"
-; V218 rat2 [V218,T03] ( 10, 36.50) long -> [rbp-0x78] "Widened IV V19"
-; V219 rat3 [V219,T11] ( 6, 20.50) long -> [rbp-0x80] "Widened IV V20"
-; V220 rat4 [V220,T12] ( 6, 20.50) long -> [rbp-0x88] "Widened IV V22"
+; V213 cse0 [V213,T107] ( 3, 3 ) ref -> r14 "CSE #03: conservative"
+; V214 cse1 [V214,T13] ( 10, 16.50) int -> r12 "CSE #10: moderate"
+; V215 rat0 [V215,T14] ( 5, 16.50) long -> [rbp-0x70] "Widened IV V13"
+; V216 rat1 [V216,T02] ( 10, 36.50) long -> r12 "Widened IV V28"
+; V217 rat2 [V217,T03] ( 10, 36.50) long -> [rbp-0x78] "Widened IV V19"
+; V218 rat3 [V218,T11] ( 6, 20.50) long -> [rbp-0x80] "Widened IV V20"
+; V219 rat4 [V219,T12] ( 6, 20.50) long -> [rbp-0x88] "Widened IV V22"
;
; Lcl frame size = 312
G_M29602_IG01:
push rbp
push r15
push r14
push r13
push r12
push rbx
sub rsp, 312
lea rbp, [rsp+0x160]
xor eax, eax
mov qword ptr [rbp-0x58], rax
vxorps xmm8, xmm8, xmm8
vmovdqu ymmword ptr [rbp-0x50], ymm8
mov qword ptr [rbp-0x30], rax
mov rbx, rdi
mov r15, rsi
;; size=51 bbWeight=1 PerfScore 11.83
G_M29602_IG02:
mov rdi, gword ptr [rbx+0x08]
cmp byte ptr [rdi], dil
mov rsi, r15
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
jne SHORT G_M29602_IG04
;; size=27 bbWeight=1 PerfScore 9.75
G_M29602_IG03:
xor r14, r14
jmp SHORT G_M29602_IG05
;; size=5 bbWeight=0.50 PerfScore 1.12
G_M29602_IG04:
mov r14, gword ptr [rax]
;; size=3 bbWeight=0.50 PerfScore 1.00
G_M29602_IG05:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Type]
call CORINFO_HELP_NEWSFAST
mov r13, rax
mov rdi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rdi]
lea rdi, bword ptr [r13+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.String]
call CORINFO_HELP_NEWSFAST
mov r12, rax
- mov rdi, 0xD1FFAB1E ; global ptr
- test byte ptr [rdi], 1
- je G_M29602_IG49
- ;; size=77 bbWeight=1 PerfScore 11.00
-G_M29602_IG06:
- mov rdi, 0xD1FFAB1E ; data for System.Collections.Generic.List`1[System.String]:s_emptyArray
+ mov rdi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rdi]
lea rdi, bword ptr [r12+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [r15+0x10]
mov rdx, gword ptr [rdi+0x40]
inc dword ptr [r13+0x14]
mov rdi, gword ptr [r13+0x08]
mov eax, dword ptr [r13+0x10]
cmp dword ptr [rdi+0x08], eax
- ja SHORT G_M29602_IG08
- ;; size=48 bbWeight=1 PerfScore 18.75
-G_M29602_IG07:
+ ja SHORT G_M29602_IG07
+ ;; size=106 bbWeight=1 PerfScore 25.50
+G_M29602_IG06:
mov rdi, r13
mov rsi, rdx
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M29602_IG09
+ jmp SHORT G_M29602_IG08
;; size=20 bbWeight=0.50 PerfScore 2.88
-G_M29602_IG08:
+G_M29602_IG07:
lea esi, [rax+0x01]
mov dword ptr [r13+0x10], esi
movsxd rsi, eax
mov rax, 0xD1FFAB1E ; code for CORINFO_HELP_ARRADDR_ST
call [rax]CORINFO_HELP_ARRADDR_ST
;; size=22 bbWeight=0.50 PerfScore 2.50
-G_M29602_IG09:
+G_M29602_IG08:
inc dword ptr [r12+0x14]
mov rax, gword ptr [r12+0x08]
mov ecx, dword ptr [r12+0x10]
cmp dword ptr [rax+0x08], ecx
- ja SHORT G_M29602_IG11
+ ja SHORT G_M29602_IG10
;; size=20 bbWeight=1 PerfScore 11.00
-G_M29602_IG10:
+G_M29602_IG09:
mov rdi, r12
mov rsi, 0xD1FFAB1E ; 'v'
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M29602_IG12
+ jmp SHORT G_M29602_IG11
;; size=27 bbWeight=0.50 PerfScore 2.88
-G_M29602_IG11:
+G_M29602_IG10:
lea edi, [rcx+0x01]
mov dword ptr [r12+0x10], edi
mov edi, ecx
mov rcx, 0xD1FFAB1E ; 'v'
mov gword ptr [rax+8*rdi+0x10], rcx
;; size=25 bbWeight=0.50 PerfScore 1.50
-G_M29602_IG12:
+G_M29602_IG11:
mov rdi, 0xD1FFAB1E ; System.Xml.Serialization.CodeGenerator
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0xE0], rax
mov rsi, gword ptr [rbx+0x68]
mov rdi, rax
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:.ctor(System.Reflection.Emit.TypeBuilder):this
call [rcx]System.Xml.Serialization.CodeGenerator:.ctor(System.Reflection.Emit.TypeBuilder):this
lea rdi, bword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xE0]
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0xE8], rax
mov rdi, gword ptr [rbx+0x10]
cmp byte ptr [rdi], dil
mov rsi, r14
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rcx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M29602_IG50
+ je G_M29602_IG48
mov r14, gword ptr [rax]
mov rdi, r13
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
call [rax]System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
mov r13, rax
mov rdi, r12
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
call [rax]System.Collections.Generic.List`1[System.__Canon]:ToArray():System.__Canon[]:this
mov r12, rax
mov rax, gword ptr [rbp-0xE8]
cmp byte ptr [rax], al
mov r14, gword ptr [r14+0x08]
lea rdi, bword ptr [rax+0x10]
mov rsi, r14
call CORINFO_HELP_ASSIGN_REF
mov rdi, r14
mov esi, 64
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x70]
call [rax+0x08]System.Reflection.Emit.MethodBuilder:GetILGeneratorCore(int):System.Reflection.Emit.ILGenerator:this
mov r14, gword ptr [rbp-0xE8]
lea rdi, bword ptr [r14+0x18]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
mov rdi, gword ptr [r14+0x10]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x50]
;; size=211 bbWeight=1 PerfScore 56.50
-G_M29602_IG13:
+G_M29602_IG12:
call [rax+0x20]System.Reflection.MethodBase:get_Attributes():int:this
test al, 16
setne cl
movzx rcx, cl
mov rsi, r13
mov rdx, r12
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InitILGeneration(System.Type[],System.String[],ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InitILGeneration(System.Type[],System.String[],ubyte):this
mov r14, gword ptr [rbx+0x70]
mov rdi, gword ptr [r14+0x30]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'System.String'
mov rdx, 0xD1FFAB1E ; 's'
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.ValueTuple`2[System.__Canon,System.__Canon],System.__Canon]:FindValue(System.ValueTuple`2[System.__Canon,System.__Canon]):byref:this
call [rax]System.Collections.Generic.Dictionary`2[System.ValueTuple`2[System.__Canon,System.__Canon],System.__Canon]:FindValue(System.ValueTuple`2[System.__Canon,System.__Canon]):byref:this
test rax, rax
- jne SHORT G_M29602_IG15
+ jne SHORT G_M29602_IG14
;; size=80 bbWeight=1 PerfScore 20.50
-G_M29602_IG14:
+G_M29602_IG13:
mov rdi, gword ptr [r14+0x18]
mov rsi, 0xD1FFAB1E ; 'System.String'
xor edx, edx
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x60]
call [rax+0x20]System.Reflection.Emit.ILGenerator:DeclareLocal(System.Type,ubyte):System.Reflection.Emit.LocalBuilder:this
mov r13, rax
- jmp SHORT G_M29602_IG16
+ jmp SHORT G_M29602_IG15
;; size=31 bbWeight=0.50 PerfScore 5.88
-G_M29602_IG15:
+G_M29602_IG14:
mov r12, gword ptr [rax]
mov rdi, r12
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Queue`1[System.__Canon]:Dequeue():System.__Canon:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Queue`1[System.__Canon]:Dequeue():System.__Canon:this
mov r13, rax
cmp dword ptr [r12+0x18], 0
- jne SHORT G_M29602_IG16
+ jne SHORT G_M29602_IG15
mov rsi, 0xD1FFAB1E ; 'System.String'
mov rdx, 0xD1FFAB1E ; 's'
mov rdi, gword ptr [r14+0x30]
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.ValueTuple`2[System.__Canon,System.__Canon],System.__Canon]:Remove(System.ValueTuple`2[System.__Canon,System.__Canon]):ubyte:this
cmp dword ptr [rdi], edi
call [rax]System.Collections.Generic.Dictionary`2[System.ValueTuple`2[System.__Canon,System.__Canon],System.__Canon]:Remove(System.ValueTuple`2[System.__Canon,System.__Canon]):ubyte:this
;; size=69 bbWeight=0.50 PerfScore 10.75
-G_M29602_IG16:
+G_M29602_IG15:
mov rdi, gword ptr [r14+0x28]
mov rdi, gword ptr [rdi+0x10]
cmp byte ptr [rdi], dil
mov rdx, r13
mov rsi, 0xD1FFAB1E ; 's'
mov ecx, 1
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
mov rdi, gword ptr [rbx+0x70]
xor rsi, rsi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Load(System.Object):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Load(System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov r14, gword ptr [r15+0x30]
mov r12d, dword ptr [r14+0x08]
test r12d, r12d
- je G_M29602_IG47
+ je G_M29602_IG46
;; size=99 bbWeight=1 PerfScore 33.25
-G_M29602_IG17:
+G_M29602_IG16:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.HashSet`1[long]
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0x90], rax
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Reflection.Emit.Label]
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0xF0], rax
mov rdi, 0xD1FFAB1E ; global ptr
test byte ptr [rdi], 1
- je G_M29602_IG51
+ je G_M29602_IG49
;; size=63 bbWeight=0.50 PerfScore 4.38
-G_M29602_IG18:
+G_M29602_IG17:
mov rdi, 0xD1FFAB1E ; data for System.Collections.Generic.List`1[System.Reflection.Emit.Label]:s_emptyArray
mov rsi, gword ptr [rdi]
lea rdi, bword ptr [rax+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbp-0xF0]
mov gword ptr [rbp-0x98], rax
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.String]
call CORINFO_HELP_NEWSFAST
mov gword ptr [rbp-0xF8], rax
- mov rdi, 0xD1FFAB1E ; data for System.Collections.Generic.List`1[System.String]:s_emptyArray
+ mov rdi, 0xD1FFAB1E ; const ptr
mov rsi, gword ptr [rdi]
lea rdi, bword ptr [rax+0x08]
call CORINFO_HELP_ASSIGN_REF
mov rax, gword ptr [rbp-0xF8]
mov gword ptr [rbp-0xA0], rax
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x58]
call [rcx+0x28]System.Reflection.Emit.ILGenerator:DefineLabel():System.Reflection.Emit.Label:this
mov dword ptr [rbp-0x5C], eax
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x58]
call [rcx+0x28]System.Reflection.Emit.ILGenerator:DefineLabel():System.Reflection.Emit.Label:this
mov dword ptr [rbp-0x60], eax
mov r8, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x100], r8
mov rcx, gword ptr [r15+0x10]
mov r9, gword ptr [rcx+0x40]
mov gword ptr [rbp-0x118], r9
cmp byte ptr [r8], r8b
lea rcx, [rbp-0x30]
mov rdi, r8
mov rsi, r9
mov rdx, 0xD1FFAB1E ; 'localTmp'
mov r10, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
call [r10]System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
test eax, eax
- jne SHORT G_M29602_IG20
+ jne SHORT G_M29602_IG19
mov rax, gword ptr [rbp-0x100]
mov rdi, gword ptr [rax+0x18]
mov rsi, gword ptr [rbp-0x118]
xor edx, edx
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x60]
;; size=229 bbWeight=0.50 PerfScore 31.38
-G_M29602_IG19:
+G_M29602_IG18:
call [rcx+0x20]System.Reflection.Emit.ILGenerator:DeclareLocal(System.Type,ubyte):System.Reflection.Emit.LocalBuilder:this
mov gword ptr [rbp-0x30], rax
;; size=7 bbWeight=0.50 PerfScore 2.00
-G_M29602_IG20:
+G_M29602_IG19:
mov rdi, gword ptr [rbp-0x100]
mov rdi, gword ptr [rdi+0x28]
mov rdx, gword ptr [rbp-0x30]
mov rdi, gword ptr [rdi+0x10]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'localTmp'
mov ecx, 1
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
mov rax, gword ptr [rbp-0x30]
xor rdi, rdi
mov gword ptr [rbp-0x30], rdi
mov gword ptr [rbp-0xA8], rax
mov rcx, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x120], rcx
mov rdi, gword ptr [rcx+0x20]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'v'
mov rdx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rdx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M29602_IG52
+ je G_M29602_IG50
mov rsi, gword ptr [rax]
mov esi, dword ptr [rsi+0x18]
mov rdi, gword ptr [rbp-0x120]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xA8]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
xor eax, eax
test r12d, r12d
- jle G_M29602_IG29
+ jle G_M29602_IG28
;; size=176 bbWeight=0.50 PerfScore 23.88
-G_M29602_IG21:
+G_M29602_IG20:
mov qword ptr [rbp-0x70], rax
mov rcx, gword ptr [r14+8*rax+0x10]
mov gword ptr [rbp-0xB0], rcx
mov rsi, qword ptr [rcx+0x20]
lea rdx, [rbp-0x38]
mov rdi, gword ptr [rbp-0x90]
mov r8, 0xD1FFAB1E ; code for System.Collections.Generic.HashSet`1[long]:AddIfNotPresent(long,byref):ubyte:this
call [r8]System.Collections.Generic.HashSet`1[long]:AddIfNotPresent(long,byref):ubyte:this
test eax, eax
- je G_M29602_IG28
+ je G_M29602_IG27
;; size=52 bbWeight=4 PerfScore 48.00
-G_M29602_IG22:
+G_M29602_IG21:
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x28]System.Reflection.Emit.ILGenerator:DefineLabel():System.Reflection.Emit.Label:this
mov dword ptr [rbp-0x64], eax
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xA8]
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x108], rax
mov rdi, gword ptr [r15+0x10]
mov rdi, gword ptr [rdi+0x40]
mov rcx, gword ptr [rbp-0xB0]
mov rdx, qword ptr [rcx+0x20]
mov qword ptr [rbp-0x40], rdx
mov rsi, 0xD1FFAB1E ; code for System.Enum:ValidateRuntimeType(System.Type):System.RuntimeType
call [rsi]System.Enum:ValidateRuntimeType(System.Type):System.RuntimeType
mov rdi, rax
cmp byte ptr [rdi], dil
mov rsi, qword ptr [rbp-0x40]
mov rax, 0xD1FFAB1E ; code for System.Enum:InternalBoxEnum(System.RuntimeTypeHandle,long):System.Object
call [rax]System.Enum:InternalBoxEnum(System.RuntimeTypeHandle,long):System.Object
mov rsi, rax
mov rdi, gword ptr [rbp-0x108]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(System.Object):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldc(System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0x64]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Beq(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Beq(System.Reflection.Emit.Label):this
mov rax, gword ptr [rbp-0x98]
inc dword ptr [rax+0x14]
mov rcx, gword ptr [rax+0x08]
mov edx, dword ptr [rax+0x10]
cmp dword ptr [rcx+0x08], edx
- ja SHORT G_M29602_IG24
+ ja SHORT G_M29602_IG23
mov rdi, rax
mov esi, dword ptr [rbp-0x64]
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.Reflection.Emit.Label]:AddWithResize(System.Reflection.Emit.Label):this
call [rcx]System.Collections.Generic.List`1[System.Reflection.Emit.Label]:AddWithResize(System.Reflection.Emit.Label):this
;; size=199 bbWeight=2 PerfScore 152.50
-G_M29602_IG23:
- jmp SHORT G_M29602_IG25
+G_M29602_IG22:
+ jmp SHORT G_M29602_IG24
;; size=2 bbWeight=2 PerfScore 4.00
-G_M29602_IG24:
+G_M29602_IG23:
lea edi, [rdx+0x01]
mov dword ptr [rax+0x10], edi
mov edi, edx
mov esi, dword ptr [rbp-0x64]
mov dword ptr [rcx+4*rdi+0x10], esi
;; size=15 bbWeight=2 PerfScore 7.50
-G_M29602_IG25:
+G_M29602_IG24:
mov rdi, gword ptr [rbp-0xB0]
mov rdi, gword ptr [rdi+0x10]
test rdi, rdi
- jne SHORT G_M29602_IG26
+ jne SHORT G_M29602_IG25
mov rdi, 0xD1FFAB1E ; ''
;; size=26 bbWeight=2 PerfScore 9.00
-G_M29602_IG26:
+G_M29602_IG25:
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
call [rcx]System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
mov rcx, gword ptr [rbp-0xA0]
inc dword ptr [rcx+0x14]
mov rdx, gword ptr [rcx+0x08]
mov r8d, dword ptr [rcx+0x10]
cmp dword ptr [rdx+0x08], r8d
- ja SHORT G_M29602_IG27
+ ja SHORT G_M29602_IG26
mov rdi, rcx
mov rsi, rax
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
call [rax]System.Collections.Generic.List`1[System.__Canon]:AddWithResize(System.__Canon):this
- jmp SHORT G_M29602_IG28
+ jmp SHORT G_M29602_IG27
;; size=56 bbWeight=2 PerfScore 42.00
-G_M29602_IG27:
+G_M29602_IG26:
lea edi, [r8+0x01]
mov dword ptr [rcx+0x10], edi
mov edi, r8d
lea rdi, bword ptr [rdx+8*rdi+0x10]
mov rsi, rax
call CORINFO_HELP_ASSIGN_REF
;; size=23 bbWeight=2 PerfScore 8.00
-G_M29602_IG28:
+G_M29602_IG27:
mov rdi, qword ptr [rbp-0x70]
inc edi
cmp r12d, edi
mov rax, rdi
- jg G_M29602_IG21
+ jg G_M29602_IG20
;; size=18 bbWeight=4 PerfScore 11.00
-G_M29602_IG29:
+G_M29602_IG28:
cmp byte ptr [r15+0x29], 0
- jne G_M29602_IG35
+ jne G_M29602_IG34
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0x5C]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
xor r12d, r12d
mov r14, gword ptr [rbp-0x98]
cmp dword ptr [r14+0x10], 0
- jle G_M29602_IG31
+ jle G_M29602_IG30
;; size=53 bbWeight=0.50 PerfScore 9.25
-G_M29602_IG30:
+G_M29602_IG29:
mov rdi, gword ptr [rbx+0x70]
cmp r12d, dword ptr [r14+0x10]
- jae G_M29602_IG53
+ jae G_M29602_IG51
mov rsi, gword ptr [r14+0x08]
cmp r12d, dword ptr [rsi+0x08]
- jae G_M29602_IG54
+ jae G_M29602_IG52
mov esi, dword ptr [rsi+4*r12+0x10]
mov rdi, gword ptr [rdi+0x18]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
mov rax, gword ptr [rbp-0xA0]
cmp r12d, dword ptr [rax+0x10]
- jae G_M29602_IG53
+ jae G_M29602_IG51
mov rsi, gword ptr [rax+0x08]
cmp r12d, dword ptr [rsi+0x08]
- jae G_M29602_IG54
+ jae G_M29602_IG52
mov rsi, gword ptr [rsi+8*r12+0x10]
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(System.Object):this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Serialization.CodeGenerator:Ldc(System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0x60]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
inc r12d
cmp r12d, dword ptr [r14+0x10]
- jl G_M29602_IG30
+ jl G_M29602_IG29
;; size=156 bbWeight=4 PerfScore 265.00
-G_M29602_IG31:
+G_M29602_IG30:
mov r9, 0xD1FFAB1E ; const ptr
mov r9, gword ptr [r9]
xor rdi, rdi
mov gword ptr [rsp], rdi
mov rdi, 0xD1FFAB1E ; 'System.Globalization.CultureInfo'
mov rsi, 0xD1FFAB1E ; 'get_InvariantCulture'
mov edx, 56
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov r14, rax
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 1
call CORINFO_HELP_NEWARR_1_OBJ
mov r9, 0xD1FFAB1E ; 'System.IFormatProvider'
mov gword ptr [rax+0x10], r9
xor r9, r9
mov gword ptr [rsp], r9
mov r9, rax
mov rdi, 0xD1FFAB1E ; 'System.Int64'
mov rsi, 0xD1FFAB1E ; 'ToString'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov r12, rax
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 2
call CORINFO_HELP_NEWARR_1_OBJ
mov r9, 0xD1FFAB1E ; 'System.Object'
mov gword ptr [rax+0x10], r9
mov r9, 0xD1FFAB1E ; 'System.String'
mov gword ptr [rax+0x18], r9
xor r9, r9
mov gword ptr [rsp], r9
mov r9, rax
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationWriter'
mov rsi, 0xD1FFAB1E ; 'CreateInvalidEnumValueException'
mov edx, 52
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov gword ptr [rbp-0xD8], rax
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov esi, dword ptr [rbp-0x5C]
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x58]
call [rcx+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
xor esi, esi
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
cmp dword ptr [rdi], edi
;; size=308 bbWeight=0.50 PerfScore 22.88
-G_M29602_IG32:
+G_M29602_IG31:
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x148], rax
mov rdi, gword ptr [rax+0x20]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'v'
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rcx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M29602_IG52
+ je G_M29602_IG50
mov rsi, gword ptr [rax]
mov esi, dword ptr [rsi+0x18]
mov rdi, gword ptr [rbp-0x148]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
call [rax]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [r15+0x10]
mov rsi, gword ptr [rsi+0x40]
cmp byte ptr [rdi], dil
mov rdx, 0xD1FFAB1E ; 'System.Int64'
xor ecx, ecx
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InternalConvert(System.Type,System.Type,ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InternalConvert(System.Type,System.Type,ubyte):this
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x158], rax
cmp byte ptr [rax], al
lea rcx, [rbp-0x58]
mov rdi, rax
mov rsi, 0xD1FFAB1E ; 'System.Int64'
mov rdx, 0xD1FFAB1E ; 'num'
mov r8, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
call [r8]System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
test eax, eax
- jne SHORT G_M29602_IG33
+ jne SHORT G_M29602_IG32
mov rax, gword ptr [rbp-0x158]
mov rdi, gword ptr [rax+0x18]
mov rsi, 0xD1FFAB1E ; 'System.Int64'
xor edx, edx
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x60]
call [rcx+0x20]System.Reflection.Emit.ILGenerator:DeclareLocal(System.Type,ubyte):System.Reflection.Emit.LocalBuilder:this
mov gword ptr [rbp-0x58], rax
;; size=209 bbWeight=0.50 PerfScore 30.00
-G_M29602_IG33:
+G_M29602_IG32:
mov rdi, gword ptr [rbp-0x158]
mov rdi, gword ptr [rdi+0x28]
mov rdx, gword ptr [rbp-0x58]
mov rdi, gword ptr [rdi+0x10]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'num'
mov ecx, 1
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
mov rax, gword ptr [rbp-0x58]
mov gword ptr [rbp-0x150], rax
xor rdi, rdi
mov gword ptr [rbp-0x58], rdi
mov rdi, gword ptr [rbx+0x70]
mov rsi, rax
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rcx]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0x150]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:LdlocAddress(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:LdlocAddress(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r12
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov r14, gword ptr [rbx+0x70]
mov rdi, gword ptr [r15+0x10]
mov rdi, gword ptr [rdi+0x10]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
call [rax]System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xD8]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
;; size=219 bbWeight=0.50 PerfScore 35.00
-G_M29602_IG34:
+G_M29602_IG33:
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Throw():this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Throw():this
- jmp G_M29602_IG46
+ jmp G_M29602_IG45
;; size=27 bbWeight=0.50 PerfScore 8.12
-G_M29602_IG35:
+G_M29602_IG34:
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0x5C]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
xor eax, eax
mov rcx, gword ptr [rbp-0x98]
cmp dword ptr [rcx+0x10], 0
- jle G_M29602_IG37
+ jle G_M29602_IG36
;; size=40 bbWeight=0.50 PerfScore 7.25
-G_M29602_IG36:
+G_M29602_IG35:
mov rdi, gword ptr [rbx+0x70]
cmp eax, dword ptr [rcx+0x10]
- jae G_M29602_IG53
+ jae G_M29602_IG51
mov rsi, gword ptr [rcx+0x08]
cmp eax, dword ptr [rsi+0x08]
- jae G_M29602_IG54
+ jae G_M29602_IG52
mov qword ptr [rbp-0x78], rax
mov esi, dword ptr [rsi+4*rax+0x10]
mov rdi, gword ptr [rdi+0x18]
mov rdx, qword ptr [rdi]
mov rdx, qword ptr [rdx+0x58]
call [rdx+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
mov rdi, gword ptr [rbx+0x70]
mov rax, qword ptr [rbp-0x78]
mov rcx, gword ptr [rbp-0xA0]
cmp eax, dword ptr [rcx+0x10]
- jae G_M29602_IG53
+ jae G_M29602_IG51
mov rsi, gword ptr [rcx+0x08]
cmp eax, dword ptr [rsi+0x08]
- jae G_M29602_IG54
+ jae G_M29602_IG52
mov qword ptr [rbp-0x78], rax
mov rsi, gword ptr [rsi+8*rax+0x10]
mov rdx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(System.Object):this
cmp dword ptr [rdi], edi
call [rdx]System.Xml.Serialization.CodeGenerator:Ldc(System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0x60]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
mov rdi, qword ptr [rbp-0x78]
inc edi
mov rsi, gword ptr [rbp-0x98]
cmp edi, dword ptr [rsi+0x10]
mov rax, rdi
mov rcx, rsi
- jl G_M29602_IG36
+ jl G_M29602_IG35
;; size=178 bbWeight=4 PerfScore 287.00
-G_M29602_IG37:
+G_M29602_IG36:
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov esi, dword ptr [rbp-0x5C]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x128], rax
mov rdi, gword ptr [rax+0x20]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'v'
mov rcx, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
call [rcx]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:FindValue(System.__Canon):byref:this
test rax, rax
- je G_M29602_IG52
+ je G_M29602_IG50
mov rax, gword ptr [rax]
mov gword ptr [rbp-0x130], rax
mov esi, dword ptr [rax+0x18]
mov rdi, gword ptr [rbp-0x128]
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldarg(int):this
call [rcx]System.Xml.Serialization.CodeGenerator:Ldarg(int):this
mov rdi, gword ptr [rbp-0x130]
mov rsi, gword ptr [rdi+0x10]
mov rdi, gword ptr [rbp-0x128]
mov rdx, 0xD1FFAB1E ; 'System.Int64'
xor ecx, ecx
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:InternalConvert(System.Type,System.Type,ubyte):this
call [rax]System.Xml.Serialization.CodeGenerator:InternalConvert(System.Type,System.Type,ubyte):this
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x138], rax
cmp byte ptr [rax], al
lea rcx, [rbp-0x48]
mov rdi, rax
mov rsi, 0xD1FFAB1E ; 'System.String[]'
mov rdx, 0xD1FFAB1E ; 'strArray'
mov r8, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
call [r8]System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
test eax, eax
- jne SHORT G_M29602_IG38
+ jne SHORT G_M29602_IG37
mov rax, gword ptr [rbp-0x138]
mov rdi, gword ptr [rax+0x18]
mov rsi, 0xD1FFAB1E ; 'System.String[]'
xor edx, edx
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x60]
call [rcx+0x20]System.Reflection.Emit.ILGenerator:DeclareLocal(System.Type,ubyte):System.Reflection.Emit.LocalBuilder:this
mov gword ptr [rbp-0x48], rax
;; size=238 bbWeight=0.50 PerfScore 32.50
-G_M29602_IG38:
+G_M29602_IG37:
mov rdi, gword ptr [rbp-0x138]
mov rdi, gword ptr [rdi+0x28]
mov rdx, gword ptr [rbp-0x48]
mov rdi, gword ptr [rdi+0x10]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'strArray'
mov ecx, 1
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
mov rax, gword ptr [rbp-0x48]
xor rdi, rdi
mov gword ptr [rbp-0x48], rdi
mov gword ptr [rbp-0xB8], rax
mov rdi, 0xD1FFAB1E ; System.Int32
call CORINFO_HELP_NEWSFAST
mov rdi, gword ptr [rbx+0x70]
mov dword ptr [rax+0x08], r12d
mov rdx, rax
mov rsi, 0xD1FFAB1E ; 'System.String'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:NewArray(System.Type,System.Object):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:NewArray(System.Type,System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xB8]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
xor eax, eax
test r12d, r12d
- jle G_M29602_IG42
+ jle G_M29602_IG41
;; size=152 bbWeight=0.50 PerfScore 18.88
-G_M29602_IG39:
+G_M29602_IG38:
mov qword ptr [rbp-0x80], rax
mov rcx, gword ptr [r14+8*rax+0x10]
mov gword ptr [rbp-0xC8], rcx
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xB8]
mov rdx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rdx]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, qword ptr [rbp-0x80]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldc(int):this
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x110], rax
mov rdi, gword ptr [rbp-0xC8]
mov rdi, gword ptr [rdi+0x10]
test rdi, rdi
- jne SHORT G_M29602_IG41
+ jne SHORT G_M29602_IG40
;; size=90 bbWeight=4 PerfScore 119.00
-G_M29602_IG40:
+G_M29602_IG39:
mov rdi, 0xD1FFAB1E ; ''
;; size=10 bbWeight=2 PerfScore 0.50
-G_M29602_IG41:
+G_M29602_IG40:
mov rcx, 0xD1FFAB1E ; code for System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
call [rcx]System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
mov rsi, rax
mov rdi, gword ptr [rbp-0x110]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, 0xD1FFAB1E ; 'System.String'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stelem(System.Type):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stelem(System.Type):this
mov rdi, qword ptr [rbp-0x80]
inc edi
cmp r12d, edi
mov rax, rdi
- jg G_M29602_IG39
+ jg G_M29602_IG38
;; size=82 bbWeight=4 PerfScore 88.00
-G_M29602_IG42:
+G_M29602_IG41:
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xB8]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rax, gword ptr [rbx+0x70]
mov gword ptr [rbp-0x140], rax
cmp byte ptr [rax], al
lea rcx, [rbp-0x50]
mov rdi, rax
mov rsi, 0xD1FFAB1E ; 'System.Int64[]'
mov rdx, 0xD1FFAB1E ; 'longArray'
mov r8, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
call [r8]System.Xml.Serialization.CodeGenerator:TryDequeueLocal(System.Type,System.String,byref):ubyte:this
test eax, eax
- jne SHORT G_M29602_IG43
+ jne SHORT G_M29602_IG42
mov rax, gword ptr [rbp-0x140]
mov rdi, gword ptr [rax+0x18]
mov rsi, 0xD1FFAB1E ; 'System.Int64[]'
xor edx, edx
mov rcx, qword ptr [rdi]
mov rcx, qword ptr [rcx+0x60]
call [rcx+0x20]System.Reflection.Emit.ILGenerator:DeclareLocal(System.Type,ubyte):System.Reflection.Emit.LocalBuilder:this
mov gword ptr [rbp-0x50], rax
;; size=119 bbWeight=0.50 PerfScore 16.25
-G_M29602_IG43:
+G_M29602_IG42:
mov rdi, gword ptr [rbp-0x140]
mov rdi, gword ptr [rdi+0x28]
mov rdx, gword ptr [rbp-0x50]
mov rdi, gword ptr [rdi+0x10]
cmp byte ptr [rdi], dil
mov rsi, 0xD1FFAB1E ; 'longArray'
mov ecx, 1
mov rax, 0xD1FFAB1E ; code for System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
call [rax]System.Collections.Generic.Dictionary`2[System.__Canon,System.__Canon]:TryInsert(System.__Canon,System.__Canon,ubyte):ubyte:this
mov rax, gword ptr [rbp-0x50]
xor rdi, rdi
mov gword ptr [rbp-0x50], rdi
mov gword ptr [rbp-0xC0], rax
mov rdi, 0xD1FFAB1E ; System.Int32
call CORINFO_HELP_NEWSFAST
mov rdi, gword ptr [rbx+0x70]
mov dword ptr [rax+0x08], r12d
mov rdx, rax
mov rsi, 0xD1FFAB1E ; 'System.Int64'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:NewArray(System.Type,System.Object):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:NewArray(System.Type,System.Object):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xC0]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
xor eax, eax
test r12d, r12d
- jle G_M29602_IG45
+ jle G_M29602_IG44
;; size=152 bbWeight=0.50 PerfScore 18.88
-G_M29602_IG44:
+G_M29602_IG43:
mov qword ptr [rbp-0x88], rax
mov rcx, gword ptr [r14+8*rax+0x10]
mov gword ptr [rbp-0xD0], rcx
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xC0]
mov rdx, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rdx]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, qword ptr [rbp-0x88]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(int):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldc(int):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xD0]
mov rsi, qword ptr [rsi+0x20]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldc(long):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldc(long):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, 0xD1FFAB1E ; 'System.Int64'
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stelem(System.Type):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stelem(System.Type):this
mov rdi, qword ptr [rbp-0x88]
inc edi
cmp r12d, edi
mov rax, rdi
- jg G_M29602_IG44
+ jg G_M29602_IG43
;; size=147 bbWeight=4 PerfScore 180.00
-G_M29602_IG45:
+G_M29602_IG44:
mov rdi, gword ptr [rbx+0x70]
mov rsi, gword ptr [rbp-0xC0]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov r14, gword ptr [rbx+0x70]
mov rdi, gword ptr [r15+0x10]
mov rdi, gword ptr [rdi+0x10]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
call [rax]System.Xml.Serialization.ReflectionAwareILGen:GetCSharpString(System.String):System.String
mov rsi, rax
mov rdi, r14
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldstr(System.String):this
mov rdi, 0xD1FFAB1E ; System.Type[]
mov esi, 4
call CORINFO_HELP_NEWARR_1_OBJ
mov r9, 0xD1FFAB1E ; 'System.Int64'
mov gword ptr [rax+0x10], r9
mov r9, 0xD1FFAB1E ; 'System.String[]'
mov gword ptr [rax+0x18], r9
mov r9, 0xD1FFAB1E ; 'System.Int64[]'
mov gword ptr [rax+0x20], r9
mov r9, 0xD1FFAB1E ; 'System.String'
mov gword ptr [rax+0x28], r9
xor r9, r9
mov gword ptr [rsp], r9
mov r9, rax
mov rdi, 0xD1FFAB1E ; 'System.Xml.Serialization.XmlSerializationWriter'
mov rsi, 0xD1FFAB1E ; 'FromEnum'
mov edx, 56
xor rcx, rcx
mov r8d, 3
mov rax, 0xD1FFAB1E ; code for System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
call [rax]System.Type:GetMethod(System.String,int,System.Reflection.Binder,int,System.Type[],System.Reflection.ParameterModifier[]):System.Reflection.MethodInfo:this
mov rsi, rax
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Call(System.Reflection.MethodInfo):this
mov rdi, gword ptr [rbx+0x70]
mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Stloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov esi, dword ptr [rbp-0x60]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Br(System.Reflection.Emit.Label):this
;; size=263 bbWeight=0.50 PerfScore 32.00
-G_M29602_IG46:
+G_M29602_IG45:
mov rdi, gword ptr [rbx+0x70]
mov rdi, gword ptr [rdi+0x18]
mov esi, dword ptr [rbp-0x60]
mov rax, qword ptr [rdi]
mov rax, qword ptr [rax+0x58]
call [rax+0x30]System.Reflection.Emit.ILGenerator:MarkLabel(System.Reflection.Emit.Label):this
;; size=21 bbWeight=0.50 PerfScore 6.00
-G_M29602_IG47:
+G_M29602_IG46:
mov rdi, gword ptr [rbx+0x70]
mov rsi, r13
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:Ldloc(System.Reflection.Emit.LocalBuilder):this
mov rdi, gword ptr [rbx+0x70]
mov rax, 0xD1FFAB1E ; code for System.Xml.Serialization.CodeGenerator:EndMethod():System.Reflection.Emit.MethodBuilder:this
cmp dword ptr [rdi], edi
call [rax]System.Xml.Serialization.CodeGenerator:EndMethod():System.Reflection.Emit.MethodBuilder:this
nop
;; size=40 bbWeight=1 PerfScore 17.00
-G_M29602_IG48:
+G_M29602_IG47:
add rsp, 312
pop rbx
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
;; size=18 bbWeight=1 PerfScore 4.25
-G_M29602_IG49:
- mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.String]
- call CORINFO_HELP_GET_GCSTATIC_BASE
- jmp G_M29602_IG06
- ;; size=20 bbWeight=0 PerfScore 0.00
-G_M29602_IG50:
+G_M29602_IG48:
mov rsi, r14
mov rdi, 0xD1FFAB1E ; System.ThrowHelper:ThrowKeyNotFoundException[System.String](System.String)
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
call [rax]System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
int3
;; size=26 bbWeight=0 PerfScore 0.00
-G_M29602_IG51:
+G_M29602_IG49:
mov rdi, 0xD1FFAB1E ; System.Collections.Generic.List`1[System.Reflection.Emit.Label]
call CORINFO_HELP_GET_GCSTATIC_BASE
mov rax, gword ptr [rbp-0xF0]
- jmp G_M29602_IG18
+ jmp G_M29602_IG17
;; size=27 bbWeight=0 PerfScore 0.00
-G_M29602_IG52:
+G_M29602_IG50:
mov edi, 0x1C346
mov rsi, 0xD1FFAB1E
call CORINFO_HELP_STRCNS
mov rsi, rax
mov rdi, 0xD1FFAB1E ; System.ThrowHelper:ThrowKeyNotFoundException[System.String](System.String)
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
call [rax]System.ThrowHelper:ThrowKeyNotFoundException[System.__Canon](System.__Canon)
int3
;; size=46 bbWeight=0 PerfScore 0.00
-G_M29602_IG53:
+G_M29602_IG51:
mov rax, 0xD1FFAB1E ; code for System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
call [rax]System.ThrowHelper:ThrowArgumentOutOfRange_IndexMustBeLessException()
int3
;; size=13 bbWeight=0 PerfScore 0.00
-G_M29602_IG54:
+G_M29602_IG52:
call CORINFO_HELP_RNGCHKFAIL
int3
;; size=6 bbWeight=0 PerfScore 0.00
-; Total bytes of code 4341, prolog size 45, PerfScore 1742.46, instruction count 910, allocated bytes for code 4341 (MethodHash=eecf8c5d) for method System.Xml.Serialization.XmlSerializationWriterILGen:WriteEnumMethod(System.Xml.Serialization.EnumMapping):this (FullOpts)
+; Total bytes of code 4302, prolog size 45, PerfScore 1738.21, instruction count 904, allocated bytes for code 4302 (MethodHash=eecf8c5d) for method System.Xml.Serialization.XmlSerializationWriterILGen:WriteEnumMethod(System.Xml.Serialization.EnumMapping):this (FullOpts)