forked from MihaZupan/runtime-utils
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[JitDiff ARM64] MihaZupan/runtime/jit-uint16mod-2 #951
Comments
Top method regressions60 (2.33 % of base) - System.Text.GB18030Encoding:GetBytes(ulong,int,ulong,int,System.Text.EncoderNLS):int:this ; Assembly listing for method System.Text.GB18030Encoding:GetBytes(ulong,int,ulong,int,System.Text.EncoderNLS):int:this (FullOpts)
; Emitting BLENDED_CODE for generic ARM64 - Unix
; FullOpts code
; optimized code
; fp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 13 single block inlinees; 31 inlinees without PGO data
; Final local variable assignments
;
-; V00 this [V00,T39] ( 5, 19 ) ref -> x20 this class-hnd single-def <System.Text.GB18030Encoding>
-; V01 arg1 [V01,T76] ( 3, 3 ) long -> x22 single-def
-; V02 arg2 [V02,T77] ( 3, 3 ) int -> x23 single-def
-; V03 arg3 [V03,T75] ( 4, 3.50) long -> x21 single-def
-; V04 arg4 [V04,T78] ( 3, 3 ) int -> x24 single-def
+; V00 this [V00,T36] ( 5, 19 ) ref -> x20 this class-hnd single-def <System.Text.GB18030Encoding>
+; V01 arg1 [V01,T73] ( 3, 3 ) long -> x22 single-def
+; V02 arg2 [V02,T74] ( 3, 3 ) int -> x23 single-def
+; V03 arg3 [V03,T72] ( 4, 3.50) long -> x21 single-def
+; V04 arg4 [V04,T75] ( 3, 3 ) int -> x24 single-def
; V05 arg5 [V05,T08] ( 10, 136.50) ref -> x19 class-hnd single-def <System.Text.EncoderNLS>
; V06 loc0 [V06,T21] ( 12, 36 ) ushort -> x25
; V07 loc1 [V07,T01] (180,2714.50) ref -> x26 class-hnd exact single-def <System.Text.EncodingByteBuffer>
;* V08 loc2 [V08 ] ( 0, 0 ) ushort -> zero-ref
; V09 loc3 [V09,T25] ( 12, 24 ) int -> registers
-; V10 loc4 [V10,T79] ( 2, 4 ) ubyte -> x0
-; V11 loc5 [V11,T80] ( 2, 4 ) ubyte -> x1
-; V12 loc6 [V12,T81] ( 2, 4 ) ubyte -> x2
+; V10 loc4 [V10,T76] ( 2, 4 ) ubyte -> x0
+; V11 loc5 [V11,T77] ( 2, 4 ) ubyte -> x1
+; V12 loc6 [V12,T78] ( 2, 4 ) ubyte -> x2
; V13 loc7 [V13,T07] ( 13, 152 ) ushort -> x22
-; V14 loc8 [V14,T41] ( 2, 16 ) ubyte -> x1
-; V15 loc9 [V15,T42] ( 2, 16 ) ubyte -> x2
-; V16 loc10 [V16,T43] ( 2, 16 ) ubyte -> x3
+; V14 loc8 [V14,T38] ( 2, 16 ) ubyte -> x0
+; V15 loc9 [V15,T39] ( 2, 16 ) ubyte -> x1
+; V16 loc10 [V16,T40] ( 2, 16 ) ubyte -> x2
;# V17 OutArgs [V17 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V18 tmp1 [V18,T60] ( 3, 6 ) ref -> x26 class-hnd exact single-def "NewObj constructor temp" <System.Text.EncodingByteBuffer>
+; V18 tmp1 [V18,T57] ( 3, 6 ) ref -> x26 class-hnd exact single-def "NewObj constructor temp" <System.Text.EncodingByteBuffer>
; V19 tmp2 [V19,T15] ( 14, 82 ) ushort -> x1 "Inline stloc first use temp"
-; V20 tmp3 [V20,T61] ( 3, 6 ) long -> x0 "Inline stloc first use temp"
-; V21 tmp4 [V21,T40] ( 4, 16 ) byref -> x22 "Inlining Arg"
-; V22 tmp5 [V22,T55] ( 4, 8 ) ushort -> x1 "Inline stloc first use temp"
-; V23 tmp6 [V23,T82] ( 2, 4 ) ubyte -> x22 "Inline return value spill temp"
+; V20 tmp3 [V20,T58] ( 3, 6 ) long -> x0 "Inline stloc first use temp"
+; V21 tmp4 [V21,T37] ( 4, 16 ) byref -> x22 "Inlining Arg"
+; V22 tmp5 [V22,T52] ( 4, 8 ) ushort -> x1 "Inline stloc first use temp"
+; V23 tmp6 [V23,T79] ( 2, 4 ) ubyte -> x22 "Inline return value spill temp"
;* V24 tmp7 [V24 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V25 tmp8 [V25 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V26 tmp9 [V26,T62] ( 3, 6 ) long -> x4 "Inline stloc first use temp"
+; V26 tmp9 [V26,T59] ( 3, 6 ) long -> x4 "Inline stloc first use temp"
;* V27 tmp10 [V27 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V28 tmp11 [V28 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V29 tmp12 [V29,T63] ( 3, 6 ) long -> x3 "Inline stloc first use temp"
+; V29 tmp12 [V29,T60] ( 3, 6 ) long -> x3 "Inline stloc first use temp"
;* V30 tmp13 [V30 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V31 tmp14 [V31,T64] ( 3, 6 ) long -> x2 "Inline stloc first use temp"
-; V32 tmp15 [V32,T65] ( 3, 6 ) ubyte -> x22 "Inline return value spill temp"
-; V33 tmp16 [V33,T66] ( 3, 6 ) long -> x1 "Inline stloc first use temp"
+; V31 tmp14 [V31,T61] ( 3, 6 ) long -> x2 "Inline stloc first use temp"
+; V32 tmp15 [V32,T62] ( 3, 6 ) ubyte -> x22 "Inline return value spill temp"
+; V33 tmp16 [V33,T63] ( 3, 6 ) long -> x1 "Inline stloc first use temp"
;* V34 tmp17 [V34 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V35 tmp18 [V35 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V36 tmp19 [V36,T26] ( 3, 24 ) long -> x0 "Inline stloc first use temp"
;* V37 tmp20 [V37 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
-;* V38 tmp21 [V38,T59] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
+;* V38 tmp21 [V38,T56] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V39 tmp22 [V39,T27] ( 3, 24 ) ubyte -> x0 "Inline stloc first use temp"
-; V40 tmp23 [V40,T44] ( 2, 16 ) ubyte -> x23 "Inline return value spill temp"
+; V40 tmp23 [V40,T41] ( 2, 16 ) ubyte -> x23 "Inline return value spill temp"
;* V41 tmp24 [V41 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V42 tmp25 [V42 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V43 tmp26 [V43,T28] ( 3, 24 ) long -> x0 "Inline stloc first use temp"
+; V43 tmp26 [V43,T28] ( 3, 24 ) long -> x3 "Inline stloc first use temp"
;* V44 tmp27 [V44 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V45 tmp28 [V45 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V46 tmp29 [V46,T29] ( 3, 24 ) long -> x0 "Inline stloc first use temp"
+; V46 tmp29 [V46,T29] ( 3, 24 ) long -> x3 "Inline stloc first use temp"
;* V47 tmp30 [V47 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
-; V48 tmp31 [V48,T30] ( 3, 24 ) long -> x0 "Inline stloc first use temp"
+; V48 tmp31 [V48,T30] ( 3, 24 ) long -> x2 "Inline stloc first use temp"
; V49 tmp32 [V49,T31] ( 3, 24 ) ubyte -> x23 "Inline return value spill temp"
-; V50 tmp33 [V50,T32] ( 3, 24 ) long -> x0 "Inline stloc first use temp"
+; V50 tmp33 [V50,T32] ( 3, 24 ) long -> x1 "Inline stloc first use temp"
;* V51 tmp34 [V51 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V52 tmp35 [V52 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
; V53 tmp36 [V53,T10] ( 2, 128 ) ubyte -> x22 "Inline return value spill temp"
;* V54 tmp37 [V54 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V55 tmp38 [V55 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V56 tmp39 [V56 ] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V57 tmp40 [V57,T12] ( 3, 96 ) long -> x23 "Inline stloc first use temp"
;* V58 tmp41 [V58 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
; V59 tmp42 [V59,T09] ( 3, 128 ) ubyte -> x22 "Inline return value spill temp"
; V60 tmp43 [V60,T13] ( 3, 96 ) long -> x0 "Inline stloc first use temp"
;* V61 tmp44 [V61 ] ( 0, 0 ) ubyte -> zero-ref "Inlining Arg"
;* V62 tmp45 [V62,T11] ( 0, 0 ) ubyte -> zero-ref "Inline return value spill temp"
; V63 tmp46 [V63,T00] ( 3,3072 ) ref -> x0 "argument with side effect"
-; V64 tmp47 [V64,T45] ( 3, 12 ) ref -> x0 "argument with side effect"
+; V64 tmp47 [V64,T42] ( 3, 12 ) ref -> x0 "argument with side effect"
; V65 tmp48 [V65,T04] ( 3, 192 ) ref -> x0 "argument with side effect"
; V66 tmp49 [V66,T05] ( 3, 192 ) ref -> x0 "argument with side effect"
; V67 tmp50 [V67,T16] ( 3, 48 ) ref -> x0 "argument with side effect"
; V68 tmp51 [V68,T17] ( 3, 48 ) ref -> x0 "argument with side effect"
; V69 tmp52 [V69,T18] ( 3, 48 ) ref -> x0 "argument with side effect"
; V70 tmp53 [V70,T19] ( 3, 48 ) ref -> x0 "argument with side effect"
; V71 tmp54 [V71,T20] ( 3, 48 ) ref -> x0 "argument with side effect"
-; V72 tmp55 [V72,T46] ( 3, 12 ) ref -> x0 "argument with side effect"
-; V73 tmp56 [V73,T47] ( 3, 12 ) ref -> x0 "argument with side effect"
-; V74 tmp57 [V74,T48] ( 3, 12 ) ref -> x0 "argument with side effect"
-; V75 tmp58 [V75,T49] ( 3, 12 ) ref -> x0 "argument with side effect"
-; V76 tmp59 [V76,T50] ( 3, 12 ) ref -> x0 "argument with side effect"
-; V77 tmp60 [V77,T51] ( 3, 12 ) ref -> x0 "argument with side effect"
-; V78 cse0 [V78,T33] ( 3, 24 ) int -> x0 "CSE #26: moderate"
-; V79 cse1 [V79,T34] ( 3, 24 ) int -> x0 "CSE #27: moderate"
-; V80 cse2 [V80,T35] ( 3, 24 ) int -> x0 "CSE #28: moderate"
-; V81 cse3 [V81,T67] ( 3, 6 ) int -> x1 "CSE #04: moderate"
-; V82 cse4 [V82,T68] ( 3, 6 ) int -> x2 "CSE #05: moderate"
-; V83 cse5 [V83,T69] ( 3, 6 ) int -> x3 "CSE #06: moderate"
-; V84 cse6 [V84,T02] ( 16, 296 ) long -> x23 multi-def "CSE #07: aggressive"
-; V85 cse7 [V85,T03] ( 4, 192 ) long -> x0 "CSE #36: aggressive"
-; V86 cse8 [V86,T06] ( 15, 156 ) long -> x22 multi-def "CSE #02: aggressive"
-; V87 cse9 [V87,T14] ( 3, 96 ) long -> x0 "CSE #37: aggressive"
-; V88 cse10 [V88,T22] ( 4, 32 ) long -> x0 "CSE #30: moderate"
-; V89 cse11 [V89,T23] ( 4, 32 ) long -> x0 "CSE #32: moderate"
-; V90 cse12 [V90,T24] ( 4, 32 ) long -> x0 "CSE #34: moderate"
-; V91 cse13 [V91,T36] ( 3, 24 ) long -> x0 "CSE #31: moderate"
-; V92 cse14 [V92,T37] ( 3, 24 ) long -> x0 "CSE #33: moderate"
-; V93 cse15 [V93,T38] ( 3, 24 ) long -> x0 "CSE #35: moderate"
-; V94 cse16 [V94,T56] ( 4, 8 ) long -> x3 "CSE #15: moderate"
-; V95 cse17 [V95,T57] ( 4, 8 ) long -> x2 "CSE #17: moderate"
-; V96 cse18 [V96,T58] ( 4, 8 ) long -> x1 "CSE #19: moderate"
-; V97 cse19 [V97,T70] ( 3, 6 ) long -> x0 "CSE #01: moderate"
-; V98 cse20 [V98,T71] ( 3, 6 ) long -> x0 "CSE #16: moderate"
-; V99 cse21 [V99,T72] ( 3, 6 ) long -> x0 "CSE #18: moderate"
-; V100 cse22 [V100,T73] ( 3, 6 ) long -> x0 "CSE #20: moderate"
-; V101 cse23 [V101,T74] ( 3, 6 ) long -> x0 "CSE #21: moderate"
-; V102 rat0 [V102,T52] ( 3, 12 ) int -> x1 "ReplaceWithLclVar is creating a new local variable"
-; V103 rat1 [V103,T53] ( 3, 12 ) int -> x2 "ReplaceWithLclVar is creating a new local variable"
-; V104 rat2 [V104,T54] ( 3, 12 ) int -> x3 "ReplaceWithLclVar is creating a new local variable"
+; V72 tmp55 [V72,T43] ( 3, 12 ) ref -> x0 "argument with side effect"
+; V73 tmp56 [V73,T44] ( 3, 12 ) ref -> x0 "argument with side effect"
+; V74 tmp57 [V74,T45] ( 3, 12 ) ref -> x0 "argument with side effect"
+; V75 tmp58 [V75,T46] ( 3, 12 ) ref -> x0 "argument with side effect"
+; V76 tmp59 [V76,T47] ( 3, 12 ) ref -> x0 "argument with side effect"
+; V77 tmp60 [V77,T48] ( 3, 12 ) ref -> x0 "argument with side effect"
+; V78 cse0 [V78,T64] ( 3, 6 ) int -> x1 "CSE #04: moderate"
+; V79 cse1 [V79,T65] ( 3, 6 ) int -> x2 "CSE #05: moderate"
+; V80 cse2 [V80,T66] ( 3, 6 ) int -> x3 "CSE #06: moderate"
+; V81 cse3 [V81,T02] ( 16, 296 ) long -> x23 multi-def "CSE #07: aggressive"
+; V82 cse4 [V82,T03] ( 4, 192 ) long -> x0 "CSE #33: aggressive"
+; V83 cse5 [V83,T06] ( 15, 156 ) long -> x22 multi-def "CSE #02: aggressive"
+; V84 cse6 [V84,T14] ( 3, 96 ) long -> x0 "CSE #34: aggressive"
+; V85 cse7 [V85,T22] ( 4, 32 ) long -> x3 "CSE #27: moderate"
+; V86 cse8 [V86,T23] ( 4, 32 ) long -> x2 "CSE #29: moderate"
+; V87 cse9 [V87,T24] ( 4, 32 ) long -> x1 "CSE #31: moderate"
+; V88 cse10 [V88,T33] ( 3, 24 ) long -> x0 "CSE #28: moderate"
+; V89 cse11 [V89,T34] ( 3, 24 ) long -> x0 "CSE #30: moderate"
+; V90 cse12 [V90,T35] ( 3, 24 ) long -> x0 "CSE #32: moderate"
+; V91 cse13 [V91,T53] ( 4, 8 ) long -> x3 "CSE #15: moderate"
+; V92 cse14 [V92,T54] ( 4, 8 ) long -> x2 "CSE #17: moderate"
+; V93 cse15 [V93,T55] ( 4, 8 ) long -> x1 "CSE #19: moderate"
+; V94 cse16 [V94,T67] ( 3, 6 ) long -> x0 "CSE #01: moderate"
+; V95 cse17 [V95,T68] ( 3, 6 ) long -> x0 "CSE #16: moderate"
+; V96 cse18 [V96,T69] ( 3, 6 ) long -> x0 "CSE #18: moderate"
+; V97 cse19 [V97,T70] ( 3, 6 ) long -> x0 "CSE #20: moderate"
+; V98 cse20 [V98,T71] ( 3, 6 ) long -> x0 "CSE #21: moderate"
+; V99 rat0 [V99,T49] ( 3, 12 ) int -> x1 "ReplaceWithLclVar is creating a new local variable"
+; V100 rat1 [V100,T50] ( 3, 12 ) int -> x2 "ReplaceWithLclVar is creating a new local variable"
+; V101 rat2 [V101,T51] ( 3, 12 ) int -> x3 "ReplaceWithLclVar is creating a new local variable"
;
; Lcl frame size = 0
G_M32130_IG01:
stp fp, lr, [sp, #-0x50]!
stp x19, x20, [sp, #0x10]
stp x21, x22, [sp, #0x20]
stp x23, x24, [sp, #0x30]
stp x25, x26, [sp, #0x40]
mov fp, sp
mov x20, x0
mov x22, x1
mov w23, w2
mov x21, x3
mov w24, w4
mov x19, x5
;; size=48 bbWeight=1 PerfScore 8.50
G_M32130_IG02:
mov w25, wzr
cbz x19, G_M32130_IG04
;; size=8 bbWeight=1 PerfScore 1.50
G_M32130_IG03:
ldrh w25, [x19, #0x34]
;; size=4 bbWeight=0.50 PerfScore 1.50
G_M32130_IG04:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
mov x26, x0
mov x1, x20
mov x2, x19
mov x3, x21
mov w4, w24
mov x5, x22
mov w6, w23
movz x7, #0xD1FFAB1E // code for System.Text.EncodingByteBuffer:.ctor(System.Text.EncodingNLS,System.Text.EncoderNLS,ulong,int,ulong,int):this
movk x7, #0xD1FFAB1E LSL #16
movk x7, #0xD1FFAB1E LSL #32
ldr x7, [x7]
blr x7
b G_M32130_IG09
;; size=68 bbWeight=1 PerfScore 12.50
G_M32130_IG05:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG06
ldp x0, x1, [x26, #0x38]
cmp x0, x1
bls G_M32130_IG07
sub x0, x0, #2
str x0, [x26, #0x38]
b G_M32130_IG07
;; size=32 bbWeight=32 PerfScore 384.00
G_M32130_IG06:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
;; size=20 bbWeight=32 PerfScore 416.00
G_M32130_IG07:
ldp x2, x1, [x26, #0x20]
cmp x2, x1
cset x2, eq
ldp x0, x1, [x26, #0x08]
movz x3, #0xD1FFAB1E // code for System.Text.EncodingNLS:ThrowBytesOverflow(System.Text.EncoderNLS,ubyte):this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
ldr wzr, [x0]
blr x3
mov w22, wzr
;; size=44 bbWeight=32 PerfScore 576.00
G_M32130_IG08:
cbz w22, G_M32130_IG23
;; size=4 bbWeight=64 PerfScore 64.00
G_M32130_IG09:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x48]
ldr x1, [x1]
blr x1
cmp w0, #0
bgt G_M32130_IG11
;; size=28 bbWeight=512 PerfScore 7424.00
G_M32130_IG10:
ldr x0, [x26, #0x38]
ldr x1, [x26, #0x48]
cmp x0, x1
bhs G_M32130_IG23
;; size=16 bbWeight=128 PerfScore 960.00
G_M32130_IG11:
add x22, x26, #88
ldr x0, [x22, #0x08]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x30]
blr x1
sxtw w1, w0
cmp w1, #0
cset x0, ne
strb w0, [x22, #0x26]
cbnz w1, G_M32130_IG12
str wzr, [x22, #0x20]
;; size=48 bbWeight=2 PerfScore 36.00
G_M32130_IG12:
cbnz w1, G_M32130_IG13
ldr x0, [x26, #0x38]
ldr x2, [x26, #0x48]
cmp x0, x2
bhs G_M32130_IG13
add x1, x0, #2
str x1, [x26, #0x38]
ldrh w1, [x0]
;; size=32 bbWeight=2 PerfScore 26.00
G_M32130_IG13:
cbnz w25, G_M32130_IG53
;; size=4 bbWeight=2 PerfScore 2.00
G_M32130_IG14:
cmp w1, #127
ble G_M32130_IG48
movn w0, #0xD1FFAB1E
add w0, w1, w0
cmp w0, #0xD1FFAB1E
bls G_M32130_IG47
movn w0, #0xD1FFAB1E
add w0, w1, w0
cmp w0, #0xD1FFAB1E
bls G_M32130_IG46
ldr x0, [x20, #0x70]
ldrh w22, [x0, w1, UXTW #2]
lsr w0, w1, #3
ldr x2, [x20, #0x90]
ldrb w0, [x2, w0, SXTW #2]
cbz w0, G_M32130_IG15
and w1, w1, #7
mov w2, #1
lsl w1, w2, w1
tst w0, w1
bne G_M32130_IG28
;; size=84 bbWeight=8 PerfScore 188.00
G_M32130_IG15:
ldr x23, [x26, #0x20]
cbz x23, G_M32130_IG17
ldr x0, [x26, #0x30]
sub x0, x0, #1
cmp x23, x0
bhs G_M32130_IG20
;; size=24 bbWeight=64 PerfScore 576.00
G_M32130_IG16:
add x0, x23, #1
str x0, [x26, #0x20]
asr w0, w22, #8
strb w0, [x23]
;; size=16 bbWeight=32 PerfScore 112.00
G_M32130_IG17:
ldr w0, [x26, #0x50]
add w0, w0, #1
str w0, [x26, #0x50]
ldr x0, [x26, #0x20]
cbz x0, G_M32130_IG19
;; size=20 bbWeight=64 PerfScore 544.00
G_M32130_IG18:
ldr x1, [x26, #0x30]
cmp x0, x1
bhs G_M32130_IG05
add x1, x0, #1
str x1, [x26, #0x20]
strb w22, [x0]
;; size=24 bbWeight=32 PerfScore 224.00
G_M32130_IG19:
ldr w0, [x26, #0x50]
add w0, w0, #1
str w0, [x26, #0x50]
mov w22, #1
b G_M32130_IG08
;; size=20 bbWeight=32 PerfScore 192.00
G_M32130_IG20:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG27
;; size=8 bbWeight=64 PerfScore 256.00
G_M32130_IG21:
ldp x22, x0, [x26, #0x38]
cmp x22, x0
bls G_M32130_IG22
sub x0, x22, #2
str x0, [x26, #0x38]
;; size=20 bbWeight=32 PerfScore 224.00
G_M32130_IG22:
ldp x2, x1, [x26, #0x20]
cmp x2, x1
cset x2, eq
ldp x0, x1, [x26, #0x08]
movz x3, #0xD1FFAB1E // code for System.Text.EncodingNLS:ThrowBytesOverflow(System.Text.EncoderNLS,ubyte):this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
ldr wzr, [x0]
blr x3
;; size=40 bbWeight=64 PerfScore 1120.00
G_M32130_IG23:
cbz x19, G_M32130_IG25
;; size=4 bbWeight=128 PerfScore 128.00
G_M32130_IG24:
ldrb w0, [x19, #0x36]
cbz w0, G_M32130_IG77
;; size=8 bbWeight=2 PerfScore 8.00
G_M32130_IG25:
cmp w25, #0
ble G_M32130_IG76
add x0, x26, #88
add x2, x26, #56
mov w1, w25
movz x3, #0xD1FFAB1E // code for System.Text.EncoderFallbackBufferHelper:InternalFallback(ushort,byref):ubyte:this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
;; size=40 bbWeight=4 PerfScore 34.00
G_M32130_IG26:
mov w25, wzr
b G_M32130_IG09
;; size=8 bbWeight=8 PerfScore 12.00
G_M32130_IG27:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
b G_M32130_IG22
;; size=24 bbWeight=32 PerfScore 448.00
G_M32130_IG28:
- movz w0, #0xD1FFAB1E
- movk w0, #0xD1FFAB1E LSL #16
- umull x0, w22, w0
- lsr x0, x0, #35
- mov w1, #10
- msub w1, w0, w1, w22
- add w1, w1, #48
+ mov w0, #10
+ movz w1, #0xD1FFAB1E
+ movk w1, #0xD1FFAB1E LSL #16
+ mul w1, w22, w1
+ mov w1, w1
+ mul x0, x1, x0
+ lsr x0, x0, #32
+ add w0, w0, #48
+ uxtb w0, w0
+ movz w1, #0xD1FFAB1E
+ movk w1, #0xD1FFAB1E LSL #16
+ umull x1, w22, w1
+ lsr x1, x1, #35
+ uxth w22, w1
+ mov w1, #126
+ movz w2, #0xD1FFAB1E
+ movk w2, #0xD1FFAB1E LSL #16
+ mul w2, w22, w2
+ mov w2, w2
+ mul x1, x2, x1
+ lsr x1, x1, #32
+ add w1, w1, #129
uxtb w1, w1
- uxth w22, w0
- movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
- movk x0, #0xD1FFAB1E LSL #32
- movk x0, #0xD1FFAB1E LSL #48
- mov w2, w22
- umulh x0, x2, x0
- mov w2, #126
- msub w2, w0, w2, w22
- add w2, w2, #129
+ movz x2, #0xD1FFAB1E
+ movk x2, #0xD1FFAB1E LSL #16
+ movk x2, #0xD1FFAB1E LSL #32
+ movk x2, #0xD1FFAB1E LSL #48
+ mov w3, w22
+ umulh x2, x3, x2
+ uxth w22, w2
+ mov w2, #10
+ movz w3, #0xD1FFAB1E
+ movk w3, #0xD1FFAB1E LSL #16
+ mul w3, w22, w3
+ mov w3, w3
+ mul x2, x3, x2
+ lsr x2, x2, #32
+ add w2, w2, #48
uxtb w2, w2
- uxth w22, w0
- movz w0, #0xD1FFAB1E
- movk w0, #0xD1FFAB1E LSL #16
- umull x0, w22, w0
- lsr x0, x0, #35
- mov w3, #10
- msub w3, w0, w3, w22
- add w3, w3, #48
- uxtb w3, w3
- uxth w22, w0
+ movz w3, #0xD1FFAB1E
+ movk w3, #0xD1FFAB1E LSL #16
+ umull x3, w22, w3
+ lsr x3, x3, #35
+ uxth w22, w3
ldr x23, [x26, #0x20]
cbz x23, G_M32130_IG29
- ldr x0, [x26, #0x30]
- sub x0, x0, #3
- cmp x23, x0
+ ldr x3, [x26, #0x30]
+ sub x3, x3, #3
+ cmp x23, x3
bhs G_M32130_IG43
- mov x0, x23
- add x4, x0, #1
+ mov x3, x23
+ add x4, x3, #1
str x4, [x26, #0x20]
add w4, w22, #129
- strb w4, [x0]
- ;; size=160 bbWeight=8 PerfScore 320.00
+ strb w4, [x3]
+ ;; size=220 bbWeight=8 PerfScore 428.00
G_M32130_IG29:
- ldr w0, [x26, #0x50]
- add w0, w0, #1
- str w0, [x26, #0x50]
- ldr x0, [x26, #0x20]
- cbz x0, G_M32130_IG30
+ ldr w3, [x26, #0x50]
+ add w3, w3, #1
+ str w3, [x26, #0x50]
+ ldr x3, [x26, #0x20]
+ cbz x3, G_M32130_IG30
ldr x4, [x26, #0x30]
sub x4, x4, #2
- cmp x0, x4
+ cmp x3, x4
bhs G_M32130_IG40
- add x4, x0, #1
+ add x4, x3, #1
str x4, [x26, #0x20]
- strb w3, [x0]
+ strb w2, [x3]
;; size=48 bbWeight=8 PerfScore 128.00
G_M32130_IG30:
- ldr w0, [x26, #0x50]
- add w0, w0, #1
- str w0, [x26, #0x50]
- ldr x0, [x26, #0x20]
- cbz x0, G_M32130_IG31
+ ldr w2, [x26, #0x50]
+ add w2, w2, #1
+ str w2, [x26, #0x50]
+ ldr x2, [x26, #0x20]
+ cbz x2, G_M32130_IG31
ldr x3, [x26, #0x30]
sub x3, x3, #1
- cmp x0, x3
+ cmp x2, x3
bhs G_M32130_IG37
- add x3, x0, #1
+ add x3, x2, #1
str x3, [x26, #0x20]
- strb w2, [x0]
+ strb w1, [x2]
;; size=48 bbWeight=8 PerfScore 128.00
G_M32130_IG31:
- ldr w0, [x26, #0x50]
- add w0, w0, #1
- str w0, [x26, #0x50]
- ldr x0, [x26, #0x20]
- cbz x0, G_M32130_IG32
+ ldr w1, [x26, #0x50]
+ add w1, w1, #1
+ str w1, [x26, #0x50]
+ ldr x1, [x26, #0x20]
+ cbz x1, G_M32130_IG32
ldr x2, [x26, #0x30]
- cmp x0, x2
+ cmp x1, x2
bhs G_M32130_IG33
- add x2, x0, #1
+ add x2, x1, #1
str x2, [x26, #0x20]
- strb w1, [x0]
+ strb w0, [x1]
;; size=44 bbWeight=8 PerfScore 124.00
G_M32130_IG32:
ldr w0, [x26, #0x50]
add w0, w0, #1
str w0, [x26, #0x50]
mov w23, #1
b G_M32130_IG36
;; size=20 bbWeight=8 PerfScore 48.00
G_M32130_IG33:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG34
ldp x0, x1, [x26, #0x38]
cmp x0, x1
bls G_M32130_IG35
sub x0, x0, #2
str x0, [x26, #0x38]
b G_M32130_IG35
;; size=32 bbWeight=8 PerfScore 96.00
G_M32130_IG34:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
;; size=20 bbWeight=8 PerfScore 104.00
G_M32130_IG35:
ldp x2, x1, [x26, #0x20]
cmp x2, x1
cset x2, eq
ldp x0, x1, [x26, #0x08]
movz x3, #0xD1FFAB1E // code for System.Text.EncodingNLS:ThrowBytesOverflow(System.Text.EncoderNLS,ubyte):this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
ldr wzr, [x0]
blr x3
mov w23, wzr
;; size=44 bbWeight=8 PerfScore 144.00
G_M32130_IG36:
cbnz w23, G_M32130_IG09
b G_M32130_IG23
;; size=8 bbWeight=8 PerfScore 16.00
G_M32130_IG37:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG38
ldp x0, x1, [x26, #0x38]
cmp x0, x1
bls G_M32130_IG39
sub x0, x0, #2
str x0, [x26, #0x38]
b G_M32130_IG39
;; size=32 bbWeight=8 PerfScore 96.00
G_M32130_IG38:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
;; size=20 bbWeight=8 PerfScore 104.00
G_M32130_IG39:
ldp x2, x1, [x26, #0x20]
cmp x2, x1
cset x2, eq
ldp x0, x1, [x26, #0x08]
movz x3, #0xD1FFAB1E // code for System.Text.EncodingNLS:ThrowBytesOverflow(System.Text.EncoderNLS,ubyte):this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
ldr wzr, [x0]
blr x3
b G_M32130_IG23
;; size=44 bbWeight=8 PerfScore 148.00
G_M32130_IG40:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG41
ldp x0, x1, [x26, #0x38]
cmp x0, x1
bls G_M32130_IG42
sub x0, x0, #2
str x0, [x26, #0x38]
b G_M32130_IG42
;; size=32 bbWeight=8 PerfScore 96.00
G_M32130_IG41:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
;; size=20 bbWeight=8 PerfScore 104.00
G_M32130_IG42:
ldp x2, x1, [x26, #0x20]
cmp x2, x1
cset x2, eq
ldp x0, x1, [x26, #0x08]
movz x3, #0xD1FFAB1E // code for System.Text.EncodingNLS:ThrowBytesOverflow(System.Text.EncoderNLS,ubyte):this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
ldr wzr, [x0]
blr x3
b G_M32130_IG23
;; size=44 bbWeight=8 PerfScore 148.00
G_M32130_IG43:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG44
ldp x22, x0, [x26, #0x38]
cmp x22, x0
bls G_M32130_IG45
sub x0, x22, #2
str x0, [x26, #0x38]
b G_M32130_IG45
;; size=32 bbWeight=8 PerfScore 96.00
G_M32130_IG44:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
;; size=20 bbWeight=8 PerfScore 104.00
G_M32130_IG45:
ldp x2, x1, [x26, #0x20]
cmp x2, x1
cset x2, eq
ldp x0, x1, [x26, #0x08]
movz x3, #0xD1FFAB1E // code for System.Text.EncodingNLS:ThrowBytesOverflow(System.Text.EncoderNLS,ubyte):this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
ldr wzr, [x0]
blr x3
b G_M32130_IG23
;; size=44 bbWeight=8 PerfScore 148.00
G_M32130_IG46:
add x0, x26, #88
add x2, x26, #56
movz x3, #0xD1FFAB1E // code for System.Text.EncoderFallbackBufferHelper:InternalFallback(ushort,byref):ubyte:this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
cbnz w0, G_M32130_IG09
b G_M32130_IG23
;; size=36 bbWeight=8 PerfScore 68.00
G_M32130_IG47:
sxtw w25, w1
b G_M32130_IG09
;; size=8 bbWeight=8 PerfScore 12.00
G_M32130_IG48:
ldr x23, [x26, #0x20]
cbz x23, G_M32130_IG49
ldr x0, [x26, #0x30]
cmp x23, x0
bhs G_M32130_IG50
mov x0, x23
add x2, x0, #1
str x2, [x26, #0x20]
strb w1, [x0]
;; size=36 bbWeight=8 PerfScore 92.00
G_M32130_IG49:
ldr w0, [x26, #0x50]
add w0, w0, #1
str w0, [x26, #0x50]
b G_M32130_IG09
;; size=16 bbWeight=8 PerfScore 44.00
G_M32130_IG50:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG51
ldp x22, x0, [x26, #0x38]
cmp x22, x0
bls G_M32130_IG52
sub x0, x22, #2
str x0, [x26, #0x38]
b G_M32130_IG52
;; size=32 bbWeight=8 PerfScore 96.00
G_M32130_IG51:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
;; size=20 bbWeight=8 PerfScore 104.00
G_M32130_IG52:
ldp x2, x1, [x26, #0x20]
cmp x2, x1
cset x2, eq
ldp x0, x1, [x26, #0x08]
movz x3, #0xD1FFAB1E // code for System.Text.EncodingNLS:ThrowBytesOverflow(System.Text.EncoderNLS,ubyte):this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
ldr wzr, [x0]
blr x3
b G_M32130_IG23
;; size=44 bbWeight=8 PerfScore 148.00
G_M32130_IG53:
movn w0, #0xD1FFAB1E
add w0, w1, w0
cmp w0, #0xD1FFAB1E
bhi G_M32130_IG73
movn w0, #0xD1FFAB1E
add w0, w25, w0
add w0, w1, w0, LSL #10
movn w1, #0xD1FFAB1E
add w0, w0, w1
movz w1, #0xD1FFAB1E
movk w1, #0xD1FFAB1E LSL #16
smull x1, w1, w0
asr x1, x1, #32
asr w2, w1, #2
add w1, w2, w1, LSR #31
mov w2, #10
msub w0, w1, w2, w0
add w0, w0, #48
uxtb w0, w0
movz w2, #0xD1FFAB1E
movk w2, #0xD1FFAB1E LSL #16
smull x2, w2, w1
asr x2, x2, #32
add w2, w2, w1
asr w3, w2, #6
add w2, w3, w2, LSR #31
mov w3, #126
msub w1, w2, w3, w1
add w1, w1, #129
uxtb w1, w1
movz w3, #0xD1FFAB1E
movk w3, #0xD1FFAB1E LSL #16
smull x3, w3, w2
asr x3, x3, #32
asr w4, w3, #2
add w3, w4, w3, LSR #31
mov w4, #10
msub w2, w3, w4, w2
add w2, w2, #48
uxtb w2, w2
mov w25, wzr
ldr x23, [x26, #0x20]
cbz x23, G_M32130_IG54
ldr x4, [x26, #0x30]
sub x4, x4, #3
cmp x23, x4
bhs G_M32130_IG68
mov x4, x23
add x5, x4, #1
str x5, [x26, #0x20]
add w3, w3, #144
strb w3, [x4]
;; size=208 bbWeight=2 PerfScore 95.00
G_M32130_IG54:
ldr w3, [x26, #0x50]
add w3, w3, #1
str w3, [x26, #0x50]
ldr x3, [x26, #0x20]
cbz x3, G_M32130_IG55
ldr x4, [x26, #0x30]
sub x4, x4, #2
cmp x3, x4
bhs G_M32130_IG65
add x4, x3, #1
str x4, [x26, #0x20]
strb w2, [x3]
;; size=48 bbWeight=2 PerfScore 32.00
G_M32130_IG55:
ldr w2, [x26, #0x50]
add w2, w2, #1
str w2, [x26, #0x50]
ldr x2, [x26, #0x20]
cbz x2, G_M32130_IG56
ldr x3, [x26, #0x30]
sub x3, x3, #1
cmp x2, x3
bhs G_M32130_IG62
add x3, x2, #1
str x3, [x26, #0x20]
strb w1, [x2]
;; size=48 bbWeight=2 PerfScore 32.00
G_M32130_IG56:
ldr w1, [x26, #0x50]
add w1, w1, #1
str w1, [x26, #0x50]
ldr x1, [x26, #0x20]
cbz x1, G_M32130_IG57
ldr x2, [x26, #0x30]
cmp x1, x2
bhs G_M32130_IG58
add x2, x1, #1
str x2, [x26, #0x20]
strb w0, [x1]
;; size=44 bbWeight=2 PerfScore 31.00
G_M32130_IG57:
ldr w0, [x26, #0x50]
add w0, w0, #1
str w0, [x26, #0x50]
mov w22, #1
b G_M32130_IG61
;; size=20 bbWeight=2 PerfScore 12.00
G_M32130_IG58:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG59
ldp x0, x1, [x26, #0x38]
cmp x0, x1
bls G_M32130_IG60
sub x0, x0, #2
str x0, [x26, #0x38]
b G_M32130_IG60
;; size=32 bbWeight=2 PerfScore 24.00
G_M32130_IG59:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
;; size=20 bbWeight=2 PerfScore 26.00
G_M32130_IG60:
ldp x2, x1, [x26, #0x20]
cmp x2, x1
cset x2, eq
ldp x0, x1, [x26, #0x08]
movz x3, #0xD1FFAB1E // code for System.Text.EncodingNLS:ThrowBytesOverflow(System.Text.EncoderNLS,ubyte):this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
ldr wzr, [x0]
blr x3
mov w22, wzr
;; size=44 bbWeight=2 PerfScore 36.00
G_M32130_IG61:
cbnz w22, G_M32130_IG26
b G_M32130_IG71
;; size=8 bbWeight=2 PerfScore 4.00
G_M32130_IG62:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG63
ldp x0, x1, [x26, #0x38]
cmp x0, x1
bls G_M32130_IG64
sub x0, x0, #2
str x0, [x26, #0x38]
b G_M32130_IG64
;; size=32 bbWeight=2 PerfScore 24.00
G_M32130_IG63:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
;; size=20 bbWeight=2 PerfScore 26.00
G_M32130_IG64:
ldp x2, x1, [x26, #0x20]
cmp x2, x1
cset x2, eq
ldp x0, x1, [x26, #0x08]
movz x3, #0xD1FFAB1E // code for System.Text.EncodingNLS:ThrowBytesOverflow(System.Text.EncoderNLS,ubyte):this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
ldr wzr, [x0]
blr x3
b G_M32130_IG71
;; size=44 bbWeight=2 PerfScore 37.00
G_M32130_IG65:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG66
ldp x0, x1, [x26, #0x38]
cmp x0, x1
bls G_M32130_IG67
sub x0, x0, #2
str x0, [x26, #0x38]
b G_M32130_IG67
;; size=32 bbWeight=2 PerfScore 24.00
G_M32130_IG66:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
;; size=20 bbWeight=2 PerfScore 26.00
G_M32130_IG67:
ldp x2, x1, [x26, #0x20]
cmp x2, x1
cset x2, eq
ldp x0, x1, [x26, #0x08]
movz x3, #0xD1FFAB1E // code for System.Text.EncodingNLS:ThrowBytesOverflow(System.Text.EncoderNLS,ubyte):this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
ldr wzr, [x0]
blr x3
b G_M32130_IG71
;; size=44 bbWeight=2 PerfScore 37.00
G_M32130_IG68:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG69
ldp x22, x0, [x26, #0x38]
cmp x22, x0
bls G_M32130_IG70
sub x0, x22, #2
str x0, [x26, #0x38]
b G_M32130_IG70
;; size=32 bbWeight=2 PerfScore 24.00
G_M32130_IG69:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
;; size=20 bbWeight=2 PerfScore 26.00
G_M32130_IG70:
ldp x2, x1, [x26, #0x20]
cmp x2, x1
cset x2, eq
ldp x0, x1, [x26, #0x08]
movz x3, #0xD1FFAB1E // code for System.Text.EncodingNLS:ThrowBytesOverflow(System.Text.EncoderNLS,ubyte):this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
ldr wzr, [x0]
blr x3
;; size=40 bbWeight=2 PerfScore 35.00
G_M32130_IG71:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG72
ldp x0, x1, [x26, #0x38]
cmp x0, x1
bls G_M32130_IG23
sub x0, x0, #2
str x0, [x26, #0x38]
b G_M32130_IG23
;; size=32 bbWeight=2 PerfScore 24.00
G_M32130_IG72:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
b G_M32130_IG23
;; size=24 bbWeight=2 PerfScore 28.00
G_M32130_IG73:
ldrb w0, [x26, #0x7E]
cbnz w0, G_M32130_IG74
ldp x22, x0, [x26, #0x38]
cmp x22, x0
bls G_M32130_IG75
sub x0, x22, #2
str x0, [x26, #0x38]
b G_M32130_IG75
;; size=32 bbWeight=2 PerfScore 24.00
G_M32130_IG74:
ldr x0, [x26, #0x18]
ldr x1, [x0]
ldr x1, [x1, #0x40]
ldr x1, [x1, #0x38]
blr x1
;; size=20 bbWeight=2 PerfScore 26.00
G_M32130_IG75:
add x0, x26, #88
add x2, x26, #56
mov w1, w25
movz x3, #0xD1FFAB1E // code for System.Text.EncoderFallbackBufferHelper:InternalFallback(ushort,byref):ubyte:this
movk x3, #0xD1FFAB1E LSL #16
movk x3, #0xD1FFAB1E LSL #32
ldr x3, [x3]
blr x3
cbnz w0, G_M32130_IG26
mov w25, wzr
b G_M32130_IG23
;; size=44 bbWeight=2 PerfScore 19.00
G_M32130_IG76:
cbz x19, G_M32130_IG79
;; size=4 bbWeight=1 PerfScore 1.00
G_M32130_IG77:
cbz x21, G_M32130_IG78
strh w25, [x19, #0x34]
;; size=8 bbWeight=0.50 PerfScore 1.00
G_M32130_IG78:
mov x0, x26
movz x1, #0xD1FFAB1E // code for System.Text.EncodingByteBuffer:get_CharsUsed():int:this
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
str w0, [x19, #0x30]
;; size=28 bbWeight=0.50 PerfScore 3.50
G_M32130_IG79:
ldr w0, [x26, #0x50]
;; size=4 bbWeight=1 PerfScore 3.00
G_M32130_IG80:
ldp x25, x26, [sp, #0x40]
ldp x23, x24, [sp, #0x30]
ldp x21, x22, [sp, #0x20]
ldp x19, x20, [sp, #0x10]
ldp fp, lr, [sp], #0x50
ret lr
;; size=24 bbWeight=1 PerfScore 6.00
-; Total bytes of code 2576, prolog size 24, PerfScore 17380.50, instruction count 644, allocated bytes for code 2576 (MethodHash=d6c5827d) for method System.Text.GB18030Encoding:GetBytes(ulong,int,ulong,int,System.Text.EncoderNLS):int:this (FullOpts)
+; Total bytes of code 2636, prolog size 24, PerfScore 17488.50, instruction count 659, allocated bytes for code 2636 (MethodHash=d6c5827d) for method System.Text.GB18030Encoding:GetBytes(ulong,int,ulong,int,System.Text.EncoderNLS):int:this (FullOpts)
; ============================================================ 20 (3.50 % of base) - System.Reflection.Emit.TypeBuilderImpl:.ctor(System.Reflection.Emit.ModuleBuilderImpl):this ; Assembly listing for method System.Reflection.Emit.TypeBuilderImpl:.ctor(System.Reflection.Emit.ModuleBuilderImpl):this (FullOpts)
; Emitting BLENDED_CODE for generic ARM64 - Unix
; FullOpts code
; optimized code
; fp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 19 single block inlinees; 0 inlinees without PGO data
; Final local variable assignments
;
; V00 this [V00,T00] ( 11, 11 ) ref -> x19 this class-hnd single-def <System.Reflection.Emit.TypeBuilderImpl>
; V01 arg1 [V01,T07] ( 3, 3 ) ref -> x20 class-hnd single-def <System.Reflection.Emit.ModuleBuilderImpl>
;# V02 OutArgs [V02 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
-; V03 tmp1 [V03,T01] ( 3, 6 ) ref -> x22 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.MethodBuilderImpl]>
+; V03 tmp1 [V03,T01] ( 3, 6 ) ref -> x21 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.MethodBuilderImpl]>
; V04 tmp2 [V04,T02] ( 3, 6 ) ref -> x23 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.FieldBuilderImpl]>
; V05 tmp3 [V05,T03] ( 3, 6 ) ref -> x23 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.ConstructorBuilderImpl]>
-; V06 tmp4 [V06,T04] ( 3, 6 ) ref -> x23 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.PropertyBuilderImpl]>
-; V07 tmp5 [V07,T05] ( 3, 6 ) ref -> x23 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.EventBuilderImpl]>
+; V06 tmp4 [V06,T04] ( 3, 6 ) ref -> x21 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.PropertyBuilderImpl]>
+; V07 tmp5 [V07,T05] ( 3, 6 ) ref -> x21 class-hnd exact single-def "NewObj constructor temp" <System.Collections.Generic.List`1[System.Reflection.Emit.EventBuilderImpl]>
;* V08 tmp6 [V08 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Reflection.Metadata.TypeDefinitionHandle>
-;* V09 tmp7 [V09,T13] ( 0, 0 ) int -> zero-ref "field V08._rowId (fldOffset=0x0)" P-INDEP
-; V10 cse0 [V10,T08] ( 5, 4 ) long -> x22 "CSE #02: aggressive"
-; V11 cse1 [V11,T09] ( 3, 2 ) long -> x21 "CSE #01: aggressive"
-; V12 cse2 [V12,T10] ( 3, 2 ) long -> x22 "CSE #04: aggressive"
-; V13 cse3 [V13,T11] ( 3, 2 ) long -> x22 "CSE #05: aggressive"
-; V14 cse4 [V14,T06] ( 5, 5 ) long -> x21 "CSE #03: aggressive"
-; V15 rat0 [V15,T12] ( 2, 2 ) long -> x0 "Spilling to split statement for tree"
+;* V09 tmp7 [V09,T10] ( 0, 0 ) int -> zero-ref "field V08._rowId (fldOffset=0x0)" P-INDEP
+; V10 cse0 [V10,T08] ( 5, 4 ) long -> x21 "CSE #02: aggressive"
+; V11 cse1 [V11,T06] ( 5, 5 ) long -> x22 "CSE #03: aggressive"
+; V12 rat0 [V12,T09] ( 2, 2 ) long -> x0 "Spilling to split statement for tree"
;
; Lcl frame size = 8
G_M41883_IG01:
stp fp, lr, [sp, #-0x40]!
stp x19, x20, [sp, #0x18]
stp x21, x22, [sp, #0x28]
str x23, [sp, #0x38]
mov fp, sp
mov x19, x0
mov x20, x1
;; size=28 bbWeight=1 PerfScore 5.50
G_M41883_IG02:
- movz x21, #0xD1FFAB1E
- movk x21, #0xD1FFAB1E LSL #16
- movk x21, #0xD1FFAB1E LSL #32
- mov x0, x21
+ movz x0, #0xD1FFAB1E
+ movk x0, #0xD1FFAB1E LSL #16
+ movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
- mov x22, x0
+ mov x21, x0
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldapr w0, [x0]
tbz w0, #0, G_M41883_IG09
- ;; size=44 bbWeight=1 PerfScore 9.00
+ ;; size=40 bbWeight=1 PerfScore 8.50
G_M41883_IG03:
- movz x21, #0xD1FFAB1E // data for System.Collections.Generic.List`1[System.Reflection.Emit.MethodBuilderImpl]:s_emptyArray
- movk x21, #0xD1FFAB1E LSL #32
- ldr x15, [x21]
- add x14, x22, #8
- bl CORINFO_HELP_ASSIGN_REF
- add x14, x19, #72
- mov x15, x22
- bl CORINFO_HELP_ASSIGN_REF
- movz x22, #0xD1FFAB1E
+ movz x22, #0xD1FFAB1E // data for System.Collections.Generic.List`1[System.Reflection.Emit.MethodBuilderImpl]:s_emptyArray
movk x22, #0xD1FFAB1E LSL #16
movk x22, #0xD1FFAB1E LSL #32
- add x0, x22, #0xD1FFAB1E
+ ldr x15, [x22]
+ add x14, x21, #8
+ bl CORINFO_HELP_ASSIGN_REF
+ add x14, x19, #72
+ mov x15, x21
+ bl CORINFO_HELP_ASSIGN_REF
+ movz x21, #0xD1FFAB1E
+ movk x21, #0xD1FFAB1E LSL #16
+ movk x21, #0xD1FFAB1E LSL #32
+ add x0, x21, #0xD1FFAB1E
bl CORINFO_HELP_NEWSFAST
mov x23, x0
- add x0, x22, #0xD1FFAB1E
+ add x0, x21, #0xD1FFAB1E
movz x1, #0xD1FFAB1E
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldapr w1, [x1]
tbz w1, #0, G_M41883_IG10
- ;; size=80 bbWeight=1 PerfScore 17.00
+ ;; size=84 bbWeight=1 PerfScore 17.50
G_M41883_IG04:
- ldr x15, [x21, #0x10]
+ ldr x15, [x22, #0x10]
add x14, x23, #8
bl CORINFO_HELP_ASSIGN_REF
add x14, x19, #80
mov x15, x23
bl CORINFO_HELP_ASSIGN_REF
- mov x0, x22
+ mov x0, x21
bl CORINFO_HELP_NEWSFAST
mov x23, x0
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldapr w0, [x0]
tbz w0, #0, G_M41883_IG11
;; size=56 bbWeight=1 PerfScore 14.00
G_M41883_IG05:
movz x14, #0xD1FFAB1E // data for System.Collections.Generic.List`1[System.Reflection.Emit.ConstructorBuilderImpl]:s_emptyArray
+ movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x23, #8
bl CORINFO_HELP_ASSIGN_REF
add x14, x19, #88
mov x15, x23
bl CORINFO_HELP_ASSIGN_REF
- movz x22, #0xD1FFAB1E
- movk x22, #0xD1FFAB1E LSL #16
- movk x22, #0xD1FFAB1E LSL #32
- mov x0, x22
+ movz x0, #0xD1FFAB1E
+ movk x0, #0xD1FFAB1E LSL #16
+ movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
- mov x23, x0
+ mov x21, x0
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldapr w0, [x0]
tbz w0, #0, G_M41883_IG12
;; size=76 bbWeight=1 PerfScore 16.50
G_M41883_IG06:
- ldr x15, [x21, #0xD1FFAB1E]
- add x14, x23, #8
+ ldr x15, [x22, #0xD1FFAB1E]
+ add x14, x21, #8
bl CORINFO_HELP_ASSIGN_REF
add x14, x19, #104
- mov x15, x23
+ mov x15, x21
bl CORINFO_HELP_ASSIGN_REF
- movz x22, #0xD1FFAB1E
- movk x22, #0xD1FFAB1E LSL #16
- movk x22, #0xD1FFAB1E LSL #32
- mov x0, x22
+ movz x0, #0xD1FFAB1E
+ movk x0, #0xD1FFAB1E LSL #16
+ movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
- mov x23, x0
+ mov x21, x0
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldapr w0, [x0]
tbz w0, #0, G_M41883_IG13
- ;; size=68 bbWeight=1 PerfScore 15.50
+ ;; size=64 bbWeight=1 PerfScore 15.00
G_M41883_IG07:
- ldr x15, [x21, #0xD1FFAB1E]
- add x14, x23, #8
+ ldr x15, [x22, #0xD1FFAB1E]
+ add x14, x21, #8
bl CORINFO_HELP_ASSIGN_REF
add x14, x19, #112
- mov x15, x23
+ mov x15, x21
bl CORINFO_HELP_ASSIGN_REF
movz x14, #0xD1FFAB1E
movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
str x14, [x19, #0x10]
add x14, x19, #8
mov x15, x20
bl CORINFO_HELP_ASSIGN_REF
mov w0, #1
strb w0, [x19, #0xA5]
str w0, [x19, #0xA8]
;; size=64 bbWeight=1 PerfScore 13.50
G_M41883_IG08:
ldr x23, [sp, #0x38]
ldp x21, x22, [sp, #0x28]
ldp x19, x20, [sp, #0x18]
ldp fp, lr, [sp], #0x40
ret lr
;; size=20 bbWeight=1 PerfScore 6.00
G_M41883_IG09:
- mov x0, x21
+ movz x0, #0xD1FFAB1E
+ movk x0, #0xD1FFAB1E LSL #16
+ movk x0, #0xD1FFAB1E LSL #32
movz x1, #0xD1FFAB1E // code for CORINFO_HELP_GET_GCSTATIC_BASE
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
b G_M41883_IG03
- ;; size=28 bbWeight=0 PerfScore 0.00
+ ;; size=36 bbWeight=0 PerfScore 0.00
G_M41883_IG10:
movz x1, #0xD1FFAB1E // code for CORINFO_HELP_GET_GCSTATIC_BASE
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
b G_M41883_IG04
;; size=24 bbWeight=0 PerfScore 0.00
G_M41883_IG11:
- mov x0, x22
+ mov x0, x21
movz x1, #0xD1FFAB1E // code for CORINFO_HELP_GET_GCSTATIC_BASE
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
b G_M41883_IG05
;; size=28 bbWeight=0 PerfScore 0.00
G_M41883_IG12:
- mov x0, x22
+ movz x0, #0xD1FFAB1E
+ movk x0, #0xD1FFAB1E LSL #16
+ movk x0, #0xD1FFAB1E LSL #32
movz x1, #0xD1FFAB1E // code for CORINFO_HELP_GET_GCSTATIC_BASE
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
b G_M41883_IG06
- ;; size=28 bbWeight=0 PerfScore 0.00
+ ;; size=36 bbWeight=0 PerfScore 0.00
G_M41883_IG13:
- mov x0, x22
+ movz x0, #0xD1FFAB1E
+ movk x0, #0xD1FFAB1E LSL #16
+ movk x0, #0xD1FFAB1E LSL #32
movz x1, #0xD1FFAB1E // code for CORINFO_HELP_GET_GCSTATIC_BASE
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
b G_M41883_IG07
- ;; size=28 bbWeight=0 PerfScore 0.00
+ ;; size=36 bbWeight=0 PerfScore 0.00
-; Total bytes of code 572, prolog size 20, PerfScore 97.00, instruction count 143, allocated bytes for code 572 (MethodHash=6be55c64) for method System.Reflection.Emit.TypeBuilderImpl:.ctor(System.Reflection.Emit.ModuleBuilderImpl):this (FullOpts)
+; Total bytes of code 592, prolog size 20, PerfScore 96.50, instruction count 148, allocated bytes for code 592 (MethodHash=6be55c64) for method System.Reflection.Emit.TypeBuilderImpl:.ctor(System.Reflection.Emit.ModuleBuilderImpl):this (FullOpts)
; ============================================================ Note: some changes were skipped as they were too large to fit into a comment. Larger list of diffs: https://gist.github.com/MihuBot/3fab1b1c8808cd9014c5df69110299d9 |
Top method improvements-132 (-7.05 % of base) - System.Linq.Expressions.Interpreter.GreaterThanInstruction:Create(System.Type,ubyte):System.Linq.Expressions.Interpreter.Instruction ; Assembly listing for method System.Linq.Expressions.Interpreter.GreaterThanInstruction:Create(System.Type,ubyte):System.Linq.Expressions.Interpreter.Instruction (FullOpts)
; Emitting BLENDED_CODE for generic ARM64 - Unix
; FullOpts code
; optimized code
; fp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 98 single block inlinees; 4 inlinees without PGO data
; Final local variable assignments
;
; V00 arg0 [V00,T02] ( 4, 3 ) ref -> x0 class-hnd single-def <System.Type>
; V01 arg1 [V01,T03] ( 3, 3 ) ubyte -> x1 single-def
; V02 loc0 [V02,T01] ( 23, 12 ) ref -> x0 class-hnd <System.Linq.Expressions.Interpreter.Instruction>
;* V03 loc1 [V03 ] ( 0, 0 ) int -> zero-ref
;# V04 OutArgs [V04 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V05 tmp1 [V05,T52] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V06 tmp2 [V06,T30] ( 4, 2 ) ref -> x0
; V07 tmp3 [V07,T04] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanDouble>
; V08 tmp4 [V08,T53] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V09 tmp5 [V09,T31] ( 4, 2 ) ref -> x0
; V10 tmp6 [V10,T05] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanSingle>
; V11 tmp7 [V11,T54] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V12 tmp8 [V12,T32] ( 4, 2 ) ref -> x0
; V13 tmp9 [V13,T06] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanUInt64>
; V14 tmp10 [V14,T55] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V15 tmp11 [V15,T33] ( 4, 2 ) ref -> x0
; V16 tmp12 [V16,T07] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanInt64>
; V17 tmp13 [V17,T56] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V18 tmp14 [V18,T34] ( 4, 2 ) ref -> x0
; V19 tmp15 [V19,T08] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanUInt32>
; V20 tmp16 [V20,T57] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V21 tmp17 [V21,T35] ( 4, 2 ) ref -> x0
; V22 tmp18 [V22,T09] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanInt32>
; V23 tmp19 [V23,T58] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V24 tmp20 [V24,T36] ( 4, 2 ) ref -> x0
; V25 tmp21 [V25,T10] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanUInt16>
; V26 tmp22 [V26,T59] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V27 tmp23 [V27,T37] ( 4, 2 ) ref -> x0
; V28 tmp24 [V28,T11] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanInt16>
; V29 tmp25 [V29,T60] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V30 tmp26 [V30,T38] ( 4, 2 ) ref -> x0
; V31 tmp27 [V31,T12] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanByte>
; V32 tmp28 [V32,T61] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V33 tmp29 [V33,T39] ( 4, 2 ) ref -> x0
; V34 tmp30 [V34,T13] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanSByte>
; V35 tmp31 [V35,T62] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V36 tmp32 [V36,T40] ( 4, 2 ) ref -> x0
; V37 tmp33 [V37,T14] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanChar>
; V38 tmp34 [V38,T63] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V39 tmp35 [V39,T41] ( 4, 2 ) ref -> x0
; V40 tmp36 [V40,T15] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanDouble>
; V41 tmp37 [V41,T64] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V42 tmp38 [V42,T42] ( 4, 2 ) ref -> x0
; V43 tmp39 [V43,T16] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanSingle>
; V44 tmp40 [V44,T65] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V45 tmp41 [V45,T43] ( 4, 2 ) ref -> x0
; V46 tmp42 [V46,T17] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanUInt64>
; V47 tmp43 [V47,T66] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V48 tmp44 [V48,T44] ( 4, 2 ) ref -> x0
; V49 tmp45 [V49,T18] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanInt64>
; V50 tmp46 [V50,T67] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V51 tmp47 [V51,T45] ( 4, 2 ) ref -> x0
; V52 tmp48 [V52,T19] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanUInt32>
; V53 tmp49 [V53,T68] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V54 tmp50 [V54,T46] ( 4, 2 ) ref -> x0
; V55 tmp51 [V55,T20] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanInt32>
; V56 tmp52 [V56,T69] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V57 tmp53 [V57,T47] ( 4, 2 ) ref -> x0
; V58 tmp54 [V58,T21] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanUInt16>
; V59 tmp55 [V59,T70] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V60 tmp56 [V60,T48] ( 4, 2 ) ref -> x0
; V61 tmp57 [V61,T22] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanInt16>
; V62 tmp58 [V62,T71] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V63 tmp59 [V63,T49] ( 4, 2 ) ref -> x0
; V64 tmp60 [V64,T23] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanByte>
; V65 tmp61 [V65,T72] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V66 tmp62 [V66,T50] ( 4, 2 ) ref -> x0
; V67 tmp63 [V67,T24] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanSByte>
; V68 tmp64 [V68,T73] ( 2, 2 ) ref -> x0 class-hnd single-def "dup spill" <System.Linq.Expressions.Interpreter.Instruction>
; V69 tmp65 [V69,T51] ( 4, 2 ) ref -> x0
; V70 tmp66 [V70,T25] ( 4, 4 ) ref -> x0 class-hnd exact single-def "NewObj constructor temp" <System.Linq.Expressions.Interpreter.GreaterThanInstruction+GreaterThanChar>
; V71 tmp67 [V71,T26] ( 4, 4 ) ref -> x0 class-hnd single-def "Inlining Arg" <System.Type>
; V72 tmp68 [V72,T74] ( 3, 1.50) int -> x0 "Inline return value spill temp"
;* V73 tmp69 [V73 ] ( 0, 0 ) int -> zero-ref "spilling qmarkNull"
;* V74 tmp70 [V74 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V75 tmp71 [V75 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.RuntimeType>
;* V76 tmp72 [V76 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.RuntimeType>
; V77 tmp73 [V77,T76] ( 4, 0 ) ref -> x19 class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.UnreachableException>
; V78 tmp74 [V78,T78] ( 2, 0 ) ref -> x20 class-hnd exact single-def "Inlining Arg" <System.String>
; V79 tmp75 [V79,T27] ( 4, 4 ) ref -> x0 class-hnd single-def "Inlining Arg" <System.Type>
; V80 tmp76 [V80,T75] ( 3, 1.50) int -> x0 "Inline return value spill temp"
;* V81 tmp77 [V81 ] ( 0, 0 ) int -> zero-ref "spilling qmarkNull"
;* V82 tmp78 [V82 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V83 tmp79 [V83 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.RuntimeType>
;* V84 tmp80 [V84 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.RuntimeType>
;* V85 tmp81 [V85 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V86 tmp82 [V86 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V87 tmp83 [V87 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V88 tmp84 [V88 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V89 tmp85 [V89 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V90 tmp86 [V90 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V91 tmp87 [V91 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V92 tmp88 [V92 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V93 tmp89 [V93 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V94 tmp90 [V94 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V95 tmp91 [V95 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V96 tmp92 [V96 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V97 tmp93 [V97 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V98 tmp94 [V98 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V99 tmp95 [V99 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V100 tmp96 [V100 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V101 tmp97 [V101 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V102 tmp98 [V102 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V103 tmp99 [V103 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V104 tmp100 [V104 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V105 tmp101 [V105 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
;* V106 tmp102 [V106 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.Boolean>
; V107 tmp103 [V107,T77] ( 4, 0 ) ref -> x19 class-hnd exact single-def "NewObj constructor temp" <System.Diagnostics.UnreachableException>
; V108 tmp104 [V108,T79] ( 2, 0 ) ref -> x20 class-hnd exact single-def "Inlining Arg" <System.String>
; V109 cse0 [V109,T00] ( 66, 33 ) long -> x19 multi-def "CSE #01: aggressive"
; V110 rat0 [V110,T28] ( 3, 2.92) int -> x0 "ReplaceWithLclVar is creating a new local variable"
; V111 rat1 [V111,T29] ( 3, 2.92) int -> x0 "ReplaceWithLclVar is creating a new local variable"
;
; Lcl frame size = 0
G_M63582_IG01:
stp fp, lr, [sp, #-0x20]!
stp x19, x20, [sp, #0x10]
mov fp, sp
;; size=12 bbWeight=1 PerfScore 2.50
G_M63582_IG02:
tst w1, #255
bne G_M63582_IG29
;; size=8 bbWeight=1 PerfScore 1.50
G_M63582_IG03:
movz x1, #0xD1FFAB1E // code for System.Dynamic.Utils.TypeUtils:GetNonNullableType(System.Type):System.Type
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
cbz x0, G_M63582_IG04
ldr x1, [x0]
ldr x1, [x1, #0x98]
ldr x1, [x1, #0x10]
blr x1
b G_M63582_IG05
;; size=44 bbWeight=0.50 PerfScore 8.75
G_M63582_IG04:
mov w0, wzr
;; size=4 bbWeight=0.50 PerfScore 0.25
G_M63582_IG05:
sub w0, w0, #4
cmp w0, #10
bhi G_M63582_IG55
;; size=12 bbWeight=0.50 PerfScore 1.00
G_M63582_IG06:
mov w0, w0
adr x1, [@RWD00]
ldr w1, [x1, x0, LSL #2]
adr x2, [G_M63582_IG02]
add x1, x1, x2
br x1
;; size=24 bbWeight=0.46 PerfScore 2.75
G_M63582_IG07:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #-0x08]
cbnz x0, G_M63582_IG08
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
movz x14, #0xD1FFAB1E
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x0, #8
bl CORINFO_HELP_ASSIGN_REF
sub x14, x19, #8
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=72 bbWeight=0.50 PerfScore 8.00
+ ;; size=64 bbWeight=0.50 PerfScore 7.50
G_M63582_IG08:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG09:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #-0x10]
cbnz x0, G_M63582_IG10
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
movz x14, #0xD1FFAB1E
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x0, #8
bl CORINFO_HELP_ASSIGN_REF
sub x14, x19, #16
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=72 bbWeight=0.50 PerfScore 8.00
+ ;; size=64 bbWeight=0.50 PerfScore 7.50
G_M63582_IG10:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG11:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #-0x18]
cbnz x0, G_M63582_IG12
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
movz x14, #0xD1FFAB1E
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x0, #8
bl CORINFO_HELP_ASSIGN_REF
sub x14, x19, #24
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=72 bbWeight=0.50 PerfScore 8.00
+ ;; size=64 bbWeight=0.50 PerfScore 7.50
G_M63582_IG12:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG13:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #-0x38]
cbnz x0, G_M63582_IG14
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
movz x14, #0xD1FFAB1E
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x0, #8
bl CORINFO_HELP_ASSIGN_REF
sub x14, x19, #56
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=72 bbWeight=0.50 PerfScore 8.00
+ ;; size=64 bbWeight=0.50 PerfScore 7.50
G_M63582_IG14:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG15:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #-0x20]
cbnz x0, G_M63582_IG16
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
movz x14, #0xD1FFAB1E
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x0, #8
bl CORINFO_HELP_ASSIGN_REF
sub x14, x19, #32
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=72 bbWeight=0.50 PerfScore 8.00
+ ;; size=64 bbWeight=0.50 PerfScore 7.50
G_M63582_IG16:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG17:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #-0x40]
cbnz x0, G_M63582_IG18
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
movz x14, #0xD1FFAB1E
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x0, #8
bl CORINFO_HELP_ASSIGN_REF
sub x14, x19, #64
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=72 bbWeight=0.50 PerfScore 8.00
+ ;; size=64 bbWeight=0.50 PerfScore 7.50
G_M63582_IG18:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG19:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #-0x28]
cbnz x0, G_M63582_IG20
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
movz x14, #0xD1FFAB1E
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x0, #8
bl CORINFO_HELP_ASSIGN_REF
sub x14, x19, #40
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=72 bbWeight=0.50 PerfScore 8.00
+ ;; size=64 bbWeight=0.50 PerfScore 7.50
G_M63582_IG20:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG21:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #-0x50]
cbnz x0, G_M63582_IG22
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
movz x14, #0xD1FFAB1E
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x0, #8
bl CORINFO_HELP_ASSIGN_REF
sub x14, x19, #80
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=72 bbWeight=0.50 PerfScore 8.00
+ ;; size=64 bbWeight=0.50 PerfScore 7.50
G_M63582_IG22:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG23:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #-0x30]
cbnz x0, G_M63582_IG24
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
movz x14, #0xD1FFAB1E
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x0, #8
bl CORINFO_HELP_ASSIGN_REF
sub x14, x19, #48
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=72 bbWeight=0.50 PerfScore 8.00
+ ;; size=64 bbWeight=0.50 PerfScore 7.50
G_M63582_IG24:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG25:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #-0x58]
cbnz x0, G_M63582_IG26
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
movz x14, #0xD1FFAB1E
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x0, #8
bl CORINFO_HELP_ASSIGN_REF
sub x14, x19, #88
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=72 bbWeight=0.50 PerfScore 8.00
+ ;; size=64 bbWeight=0.50 PerfScore 7.50
G_M63582_IG26:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG27:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #-0x48]
cbnz x0, G_M63582_IG28
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
movz x14, #0xD1FFAB1E
- movk x14, #0xD1FFAB1E LSL #16
movk x14, #0xD1FFAB1E LSL #32
ldr x15, [x14]
add x14, x0, #8
bl CORINFO_HELP_ASSIGN_REF
sub x14, x19, #72
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=72 bbWeight=0.50 PerfScore 8.00
+ ;; size=64 bbWeight=0.50 PerfScore 7.50
G_M63582_IG28:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG29:
movz x1, #0xD1FFAB1E // code for System.Dynamic.Utils.TypeUtils:GetNonNullableType(System.Type):System.Type
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
cbz x0, G_M63582_IG30
ldr x1, [x0]
ldr x1, [x1, #0x98]
ldr x1, [x1, #0x10]
blr x1
b G_M63582_IG31
;; size=44 bbWeight=0.50 PerfScore 8.75
G_M63582_IG30:
mov w0, wzr
;; size=4 bbWeight=0.50 PerfScore 0.25
G_M63582_IG31:
sub w0, w0, #4
cmp w0, #10
bhi G_M63582_IG56
;; size=12 bbWeight=0.50 PerfScore 1.00
G_M63582_IG32:
mov w0, w0
adr x1, [@RWD44]
ldr w1, [x1, x0, LSL #2]
adr x2, [G_M63582_IG02]
add x1, x1, x2
br x1
;; size=24 bbWeight=0.46 PerfScore 2.75
G_M63582_IG33:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #0x50]
cbnz x0, G_M63582_IG34
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
str xzr, [x0, #0x08]
add x14, x19, #80
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=52 bbWeight=0.50 PerfScore 5.50
+ ;; size=48 bbWeight=0.50 PerfScore 5.25
G_M63582_IG34:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG35:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #0x48]
cbnz x0, G_M63582_IG36
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
str xzr, [x0, #0x08]
add x14, x19, #72
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=52 bbWeight=0.50 PerfScore 5.50
+ ;; size=48 bbWeight=0.50 PerfScore 5.25
G_M63582_IG36:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG37:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #0x40]
cbnz x0, G_M63582_IG38
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
str xzr, [x0, #0x08]
add x14, x19, #64
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=52 bbWeight=0.50 PerfScore 5.50
+ ;; size=48 bbWeight=0.50 PerfScore 5.25
G_M63582_IG38:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG39:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #0x20]
cbnz x0, G_M63582_IG40
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
str xzr, [x0, #0x08]
add x14, x19, #32
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=52 bbWeight=0.50 PerfScore 5.50
+ ;; size=48 bbWeight=0.50 PerfScore 5.25
G_M63582_IG40:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG41:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #0x38]
cbnz x0, G_M63582_IG42
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
str xzr, [x0, #0x08]
add x14, x19, #56
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=52 bbWeight=0.50 PerfScore 5.50
+ ;; size=48 bbWeight=0.50 PerfScore 5.25
G_M63582_IG42:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG43:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #0x18]
cbnz x0, G_M63582_IG44
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
str xzr, [x0, #0x08]
add x14, x19, #24
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=52 bbWeight=0.50 PerfScore 5.50
+ ;; size=48 bbWeight=0.50 PerfScore 5.25
G_M63582_IG44:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG45:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #0x30]
cbnz x0, G_M63582_IG46
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
str xzr, [x0, #0x08]
add x14, x19, #48
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=52 bbWeight=0.50 PerfScore 5.50
+ ;; size=48 bbWeight=0.50 PerfScore 5.25
G_M63582_IG46:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG47:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #0x08]
cbnz x0, G_M63582_IG48
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
str xzr, [x0, #0x08]
add x14, x19, #8
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=52 bbWeight=0.50 PerfScore 5.50
+ ;; size=48 bbWeight=0.50 PerfScore 5.25
G_M63582_IG48:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG49:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #0x28]
cbnz x0, G_M63582_IG50
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
str xzr, [x0, #0x08]
add x14, x19, #40
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=52 bbWeight=0.50 PerfScore 5.50
+ ;; size=48 bbWeight=0.50 PerfScore 5.25
G_M63582_IG50:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG51:
movz x19, #0xD1FFAB1E // data for System.Linq.Expressions.Interpreter.GreaterThanInstruction:s_liftedToNullSByte
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19]
cbnz x0, G_M63582_IG52
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
str xzr, [x0, #0x08]
mov x14, x19
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=52 bbWeight=0.50 PerfScore 5.50
+ ;; size=48 bbWeight=0.50 PerfScore 5.25
G_M63582_IG52:
b G_M63582_IG54
;; size=4 bbWeight=0.50 PerfScore 0.50
G_M63582_IG53:
movz x19, #0xD1FFAB1E
- movk x19, #0xD1FFAB1E LSL #16
movk x19, #0xD1FFAB1E LSL #32
ldr x0, [x19, #0x10]
cbnz x0, G_M63582_IG54
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
str xzr, [x0, #0x08]
add x14, x19, #16
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
- ;; size=52 bbWeight=0.50 PerfScore 5.50
+ ;; size=48 bbWeight=0.50 PerfScore 5.25
G_M63582_IG54:
ldp x19, x20, [sp, #0x10]
ldp fp, lr, [sp], #0x20
ret lr
;; size=12 bbWeight=1 PerfScore 3.00
G_M63582_IG55:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
mov x19, x0
mov w0, #0xD1FFAB1E
movz x1, #0xD1FFAB1E
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_STRCNS
movz x1, #0xD1FFAB1E // code for System.SR:GetResourceString(System.String):System.String
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
mov x20, x0
mov x0, x19
movz x1, #0xD1FFAB1E // code for System.Exception:.ctor():this
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
add x14, x19, #16
mov x15, x20
bl CORINFO_HELP_ASSIGN_REF
mov x0, x19
bl CORINFO_HELP_THROW
brk #0
;; size=112 bbWeight=0 PerfScore 0.00
G_M63582_IG56:
movz x0, #0xD1FFAB1E
movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_NEWSFAST
mov x19, x0
mov w0, #0xD1FFAB1E
movz x1, #0xD1FFAB1E
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
bl CORINFO_HELP_STRCNS
movz x1, #0xD1FFAB1E // code for System.SR:GetResourceString(System.String):System.String
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
mov x20, x0
mov x0, x19
movz x1, #0xD1FFAB1E // code for System.Exception:.ctor():this
movk x1, #0xD1FFAB1E LSL #16
movk x1, #0xD1FFAB1E LSL #32
ldr x1, [x1]
blr x1
add x14, x19, #16
mov x15, x20
bl CORINFO_HELP_ASSIGN_REF
mov x0, x19
bl CORINFO_HELP_THROW
brk #0
;; size=112 bbWeight=0 PerfScore 0.00
RWD00 dd G_M63582_IG27 - G_M63582_IG02
dd G_M63582_IG25 - G_M63582_IG02
dd G_M63582_IG23 - G_M63582_IG02
dd G_M63582_IG21 - G_M63582_IG02
dd G_M63582_IG19 - G_M63582_IG02
dd G_M63582_IG17 - G_M63582_IG02
dd G_M63582_IG15 - G_M63582_IG02
dd G_M63582_IG13 - G_M63582_IG02
dd G_M63582_IG11 - G_M63582_IG02
dd G_M63582_IG09 - G_M63582_IG02
dd G_M63582_IG07 - G_M63582_IG02
RWD44 dd G_M63582_IG53 - G_M63582_IG02
dd G_M63582_IG51 - G_M63582_IG02
dd G_M63582_IG49 - G_M63582_IG02
dd G_M63582_IG47 - G_M63582_IG02
dd G_M63582_IG45 - G_M63582_IG02
dd G_M63582_IG43 - G_M63582_IG02
dd G_M63582_IG41 - G_M63582_IG02
dd G_M63582_IG39 - G_M63582_IG02
dd G_M63582_IG37 - G_M63582_IG02
dd G_M63582_IG35 - G_M63582_IG02
dd G_M63582_IG33 - G_M63582_IG02
-; Total bytes of code 1872, prolog size 12, PerfScore 191.50, instruction count 468, allocated bytes for code 1872 (MethodHash=914307a1) for method System.Linq.Expressions.Interpreter.GreaterThanInstruction:Create(System.Type,ubyte):System.Linq.Expressions.Interpreter.Instruction (FullOpts)
+; Total bytes of code 1740, prolog size 12, PerfScore 183.25, instruction count 435, allocated bytes for code 1740 (MethodHash=914307a1) for method System.Linq.Expressions.Interpreter.GreaterThanInstruction:Create(System.Type,ubyte):System.Linq.Expressions.Interpreter.Instruction (FullOpts)
; ============================================================ -56 (-12.50 % of base) - System.Linq.Expressions.Interpreter.ScriptingRuntimeHelpers:GetPrimitiveDefaultValue(System.Type):System.Object ; Assembly listing for method System.Linq.Expressions.Interpreter.ScriptingRuntimeHelpers:GetPrimitiveDefaultValue(System.Type):System.Object (FullOpts)
; Emitting BLENDED_CODE for generic ARM64 - Unix
; FullOpts code
; optimized code
; fp based frame
; partially interruptible
; No PGO data
; 0 inlinees with PGO data; 5 single block inlinees; 3 inlinees without PGO data
; Final local variable assignments
;
; V00 arg0 [V00,T00] ( 8, 5.50) ref -> x19 class-hnd single-def <System.Type>
; V01 loc0 [V01,T01] ( 13, 6.50) ref -> x20 class-hnd <System.Object>
;* V02 loc1 [V02 ] ( 0, 0 ) int -> zero-ref
;# V03 OutArgs [V03 ] ( 1, 1 ) struct ( 0) [sp+0x00] do-not-enreg[XS] addr-exposed "OutgoingArgSpace"
; V04 tmp1 [V04,T04] ( 3, 2 ) int -> x0 "Inline return value spill temp"
;* V05 tmp2 [V05 ] ( 0, 0 ) int -> zero-ref "spilling qmarkNull"
;* V06 tmp3 [V06 ] ( 0, 0 ) int -> zero-ref "Inline return value spill temp"
;* V07 tmp4 [V07 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "Inlining Arg" <System.RuntimeType>
;* V08 tmp5 [V08 ] ( 0, 0 ) ref -> zero-ref class-hnd "Inline stloc first use temp" <System.RuntimeType>
;* V09 tmp6 [V09 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.RuntimeType[]>
;* V10 tmp7 [V10 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "Inline stloc first use temp" <System.Runtime.CompilerServices.TypeHandle>
;* V11 tmp8 [V11 ] ( 0, 0 ) ref -> zero-ref class-hnd exact "impAppendStmt" <System.RuntimeType>
;* V12 tmp9 [V12 ] ( 0, 0 ) struct ( 8) zero-ref ld-addr-op "NewObj constructor temp" <System.Runtime.CompilerServices.TypeHandle>
;* V13 tmp10 [V13 ] ( 0, 0 ) long -> zero-ref "Inlining Arg"
; V14 tmp11 [V14,T02] ( 6, 6 ) ref -> x0 "Single return block return value"
;* V15 tmp12 [V15 ] ( 0, 0 ) long -> zero-ref "field V10.m_asTAddr (fldOffset=0x0)" P-INDEP
;* V16 tmp13 [V16 ] ( 0, 0 ) long -> zero-ref "field V12.m_asTAddr (fldOffset=0x0)" P-INDEP
; V17 rat0 [V17,T03] ( 3, 5.87) int -> x0 "ReplaceWithLclVar is creating a new local variable"
;
; Lcl frame size = 0
G_M33657_IG01:
stp fp, lr, [sp, #-0x20]!
stp x19, x20, [sp, #0x10]
mov fp, sp
mov x19, x0
;; size=16 bbWeight=1 PerfScore 3.00
G_M33657_IG02:
cbz x19, G_M33657_IG04
;; size=4 bbWeight=1 PerfScore 1.00
G_M33657_IG03:
mov x0, x19
ldr x1, [x19]
ldr x1, [x1, #0x98]
ldr x1, [x1, #0x10]
blr x1
b G_M33657_IG05
;; size=24 bbWeight=0.50 PerfScore 5.75
G_M33657_IG04:
mov w0, wzr
;; size=4 bbWeight=0.50 PerfScore 0.25
G_M33657_IG05:
sub w0, w0, #3
cmp w0, #13
bhi G_M33657_IG24
;; size=12 bbWeight=1 PerfScore 2.00
G_M33657_IG06:
mov w0, w0
adr x1, [@RWD00]
ldr w1, [x1, x0, LSL #2]
adr x2, [G_M33657_IG02]
add x1, x1, x2
br x1
;; size=24 bbWeight=0.93 PerfScore 5.60
G_M33657_IG07:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x0, [x0]
b G_M33657_IG23
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG08:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x0, [x0]
b G_M33657_IG23
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG09:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x0, [x0]
b G_M33657_IG23
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG10:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x0, [x0]
b G_M33657_IG23
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG11:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x20, [x0]
b G_M33657_IG21
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG12:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x20, [x0]
b G_M33657_IG21
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG13:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x20, [x0]
b G_M33657_IG21
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG14:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x20, [x0]
b G_M33657_IG21
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG15:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x20, [x0]
b G_M33657_IG21
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG16:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x20, [x0]
b G_M33657_IG21
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG17:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x20, [x0]
b G_M33657_IG21
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG18:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x20, [x0]
b G_M33657_IG21
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG19:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x20, [x0]
b G_M33657_IG21
- ;; size=20 bbWeight=0.50 PerfScore 2.75
+ ;; size=16 bbWeight=0.50 PerfScore 2.50
G_M33657_IG20:
movz x0, #0xD1FFAB1E
- movk x0, #0xD1FFAB1E LSL #16
movk x0, #0xD1FFAB1E LSL #32
ldr x20, [x0]
- ;; size=16 bbWeight=0.50 PerfScore 2.25
+ ;; size=12 bbWeight=0.50 PerfScore 2.00
G_M33657_IG21:
mov x0, x19
ldr x1, [x19]
ldr x1, [x1, #0x70]
ldr x1, [x1, #0x30]
blr x1
cbz w0, G_M33657_IG22
mov x0, x19
mov x1, x20
movz x2, #0xD1FFAB1E // code for System.Enum:ToObject(System.Type,System.Object):System.Object
movk x2, #0xD1FFAB1E LSL #16
movk x2, #0xD1FFAB1E LSL #32
ldr x2, [x2]
blr x2
mov x20, x0
;; size=56 bbWeight=0.50 PerfScore 9.25
G_M33657_IG22:
mov x0, x20
;; size=4 bbWeight=0.50 PerfScore 0.25
G_M33657_IG23:
ldp x19, x20, [sp, #0x10]
ldp fp, lr, [sp], #0x20
ret lr
;; size=12 bbWeight=0.50 PerfScore 1.50
G_M33657_IG24:
mov x0, xzr
;; size=4 bbWeight=0.50 PerfScore 0.25
G_M33657_IG25:
ldp x19, x20, [sp, #0x10]
ldp fp, lr, [sp], #0x20
ret lr
;; size=12 bbWeight=0.50 PerfScore 1.50
RWD00 dd G_M33657_IG20 - G_M33657_IG02
dd G_M33657_IG19 - G_M33657_IG02
dd G_M33657_IG18 - G_M33657_IG02
dd G_M33657_IG17 - G_M33657_IG02
dd G_M33657_IG16 - G_M33657_IG02
dd G_M33657_IG15 - G_M33657_IG02
dd G_M33657_IG14 - G_M33657_IG02
dd G_M33657_IG13 - G_M33657_IG02
dd G_M33657_IG12 - G_M33657_IG02
dd G_M33657_IG11 - G_M33657_IG02
dd G_M33657_IG10 - G_M33657_IG02
dd G_M33657_IG09 - G_M33657_IG02
dd G_M33657_IG08 - G_M33657_IG02
dd G_M33657_IG07 - G_M33657_IG02
-; Total bytes of code 448, prolog size 12, PerfScore 68.35, instruction count 112, allocated bytes for code 448 (MethodHash=03e37c86) for method System.Linq.Expressions.Interpreter.ScriptingRuntimeHelpers:GetPrimitiveDefaultValue(System.Type):System.Object (FullOpts)
+; Total bytes of code 392, prolog size 12, PerfScore 64.85, instruction count 98, allocated bytes for code 392 (MethodHash=03e37c86) for method System.Linq.Expressions.Interpreter.ScriptingRuntimeHelpers:GetPrimitiveDefaultValue(System.Type):System.Object (FullOpts)
; ============================================================ Note: some changes were skipped as they were too large to fit into a comment. Larger list of diffs: https://gist.github.com/MihuBot/f4dc20d57782f8f7dbb22142a9495061 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Job completed in 14 minutes 50 seconds (remote runner delay: 1 minute 26 seconds).
https://github.com/MihaZupan/runtime/tree/jit-uint16mod-2
Using arguments:
-arm
Diffs
Diffs
Artifacts:
The text was updated successfully, but these errors were encountered: