Untitled diff

Created Diff never expires
11 removals
69 lines
11 additions
70 lines
; Assembly listing for method MyClass:ListAdd10000PreAlloc():System.Collections.Generic.List`1[int]:this (FullOpts)
; Assembly listing for method MyClass:ListAdd10000PreAlloc():System.Collections.Generic.List`1[int]:this (FullOpts)
; Emitting BLENDED_CODE for generic ARM64 - Apple
; Emitting BLENDED_CODE for generic ARM64 - Apple
; FullOpts code
; FullOpts code
; optimized code
; optimized code
; fp based frame
; fp based frame
; fully interruptible
; fully interruptible
; No PGO data
; No PGO data
; 0 inlinees with PGO data; 1 single block inlinees; 2 inlinees without PGO data
; 0 inlinees with PGO data; 1 single block inlinees; 2 inlinees without PGO data
G_M000_IG01: ;; offset=0x0000
G_M000_IG01: ;; offset=0x0000
stp fp, lr, [sp, #-0x20]!
stp fp, lr, [sp, #-0x20]!
stp x19, x20, [sp, #0x10]
stp x19, x20, [sp, #0x10]
mov fp, sp
mov fp, sp


G_M000_IG02: ;; offset=0x000C
G_M000_IG02: ;; offset=0x000C
movz x0, #0x3CF0
movz x0, #0x3CF0
movk x0, #0x756 LSL #16
movk x0, #0x450 LSL #16
movk x0, #1 LSL #32
movk x0, #1 LSL #32
bl CORINFO_HELP_NEWSFAST
bl CORINFO_HELP_NEWSFAST
mov x19, x0
mov x19, x0
movz x0, #0xAD40
movz x0, #0xAD40
movk x0, #0x6DF LSL #16
movk x0, #985 LSL #16
movk x0, #1 LSL #32
movk x0, #1 LSL #32
mov x1, #0x2710
mov x1, #0x2710
bl CORINFO_HELP_NEWARR_1_VC
bl CORINFO_HELP_NEWARR_1_VC
add x14, x19, #8
add x14, x19, #8
mov x15, x0
mov x15, x0
bl CORINFO_HELP_ASSIGN_REF
bl CORINFO_HELP_ASSIGN_REF
mov w20, wzr
mov w20, wzr


G_M000_IG03: ;; offset=0x0044
G_M000_IG03: ;; offset=0x0044
ldp w1, w0, [x19, #0x10]
ldr w0, [x19, #0x14]
ldr w1, [x19, #0x10]
add w0, w0, #1
add w0, w0, #1
str w0, [x19, #0x14]
str w0, [x19, #0x14]
ldr x0, [x19, #0x08]
ldr x0, [x19, #0x08]
ldr w2, [x0, #0x08]
ldr w2, [x0, #0x08]
cmp w2, w1
cmp w2, w1
bls G_M000_IG05
bls G_M000_IG05


G_M000_IG04: ;; offset=0x0060
G_M000_IG04: ;; offset=0x0064
add w2, w1, #1
add w2, w1, #1
str w2, [x19, #0x10]
str w2, [x19, #0x10]
add x0, x0, #16
add x0, x0, #16
str w20, [x0, w1, UXTW #2]
str w20, [x0, w1, UXTW #2]
b G_M000_IG06
b G_M000_IG06


G_M000_IG05: ;; offset=0x0074
G_M000_IG05: ;; offset=0x0078
mov x0, x19
mov x0, x19
mov w1, w20
mov w1, w20
movz x2, #0xD9B0
movz x2, #0xD9B0
movk x2, #0x758 LSL #16
movk x2, #0x452 LSL #16
movk x2, #1 LSL #32
movk x2, #1 LSL #32
ldr x2, [x2]
ldr x2, [x2]
blr x2
blr x2


G_M000_IG06: ;; offset=0x0090
G_M000_IG06: ;; offset=0x0094
add w20, w20, #1
add w20, w20, #1
mov w0, #0x2710
mov w0, #0x2710
cmp w20, w0
cmp w20, w0
blt G_M000_IG03
blt G_M000_IG03


G_M000_IG07: ;; offset=0x00A0
G_M000_IG07: ;; offset=0x00A4
mov x0, x19
mov x0, x19


G_M000_IG08: ;; offset=0x00A4
G_M000_IG08: ;; offset=0x00A8
ldp x19, x20, [sp, #0x10]
ldp x19, x20, [sp, #0x10]
ldp fp, lr, [sp], #0x20
ldp fp, lr, [sp], #0x20
ret lr
ret lr


; Total bytes of code 176
; Total bytes of code 180