Samples: 25K of event 'cpu-clock', 4999 Hz, Event count (approx.): 5007801360, [percent: local period] instance class System.Type [System.Private.CoreLib] System.Object::GetType()[OptimizedTier1]() /tmp/jitted-40838-27653.so 1.09 stp x29, x30, [sp, #-32]! 1.98 str x19, [sp, #24] 0.78 mov x29, sp 0.08 mov x19, x0 1.09 ldr x0, [x19] 7.14 ldr x1, [x0, #32] 2.99 add x1, x1, #0x10 26.97 ldr x1, [x1] 46.42 ↓ cbz x1, 34 7.37 24: mov x0, x1 1.01 ldr x19, [sp, #24] 1.07 ldp x29, x30, [sp], #32 1.98 ← ret 34: mov x1, #0x5b90 // #23440 movk x1, #0xe135, lsl #16 movk x1, #0xf766, lsl #32 ldr x1, [x1] → blr x1 mov x1, x0 ↑ b 24 Samples: 25K of event 'cpu-clock', 4999 Hz, Event count (approx.): 5007801360, [percent: local period] instance string [System.Private.CoreLib] System.Enum::ToString(string)[OptimizedTier1]() /tmp/jitted-40838-27652.so 0.99 stp x29, x30, [sp, #-64]! 1.83 stp x19, x20, [sp, #32] 0.95 stp x21, x22, [sp, #48] 1.08 mov x29, sp 0.88 stp xzr, xzr, [x29, #16] 0.95 mov x19, x0 0.23 ↓ cbz x1, 1e8 1.28 ldr w0, [x1, #8] 0.72 ↓ cbz w0, 1e8 1.33 cmp w0, #0x1 ↓ b.ne a64 1.31 ldrh w20, [x1, #12] 1.08 mov x0, x19 mov x1, #0x4b88 // #19336 1.33 movk x1, #0xe164, lsl #16 movk x1, #0xf766, lsl #32 1.04 ldr x1, [x1] 1.19 → blr x1 1.06 mov x21, x0 0.63 add x22, x19, #0x8 0.90 ldr x0, [x19] 0.81 bl ffffffffff61cc38 1.10 sub w0, w0, #0x4 1.01 cmp w0, #0x4 ↓ b.ne 20c 9.56 ldr w19, [x22] orr w0, w20, #0x20 0.88 sub w20, w0, #0x64 1.28 cmp w20, #0x3 0.11 ↓ b.ls 6b8 0.99 cmp w0, #0x78 ↓ b.ne a64 1.19 str x22, [x29, #16] 0.97 mov x0, #0x30b8 // #12472 0.14 movk x0, #0x35c0, lsl #16 1.04 movk x0, #0xf757, lsl #32 1.08 ldr x20, [x0] 1.04 ↓ cbz x20, 898 1.22 98: mov x0, #0xf3e0 // #62432 0.09 movk x0, #0xe138, lsl #16 0.86 movk x0, #0xf766, lsl #32 0.65 mov x1, #0x8 // #8 0.99 bl ffffffffff61cc48 1.15 mov x21, x0 1.06 add x1, x21, #0xc 1.15 ldr x2, [x20, #24] mov x3, #0x9548 // #38216 1.01 movk x3, #0xe1f3, lsl #16 0.16 movk x3, #0xf766, lsl #32 1.22 cmp x2, x3 ↓ b.ne 8ec 0.92 ldr w2, [x22] 1.15 lsr w3, w2, #24 uxtb w3, w3 1.06 and w0, w3, #0xf0 0.27 and w3, w3, #0xf 0.63 add w3, w3, w0, lsl #4 0.25 mov w0, #0xffff7677 // #-35209 0.52 add w3, w3, w0 0.18 neg w0, w3 1.15 mov w4, #0x7070 // #28784 0.90 and w0, w0, w4 0.23 add w3, w3, w0, lsr #4 0.86 mov w0, #0xb9b9 // #47545 0.20 add w3, w3, w0 0.52 uxtb w0, w3 0.79 strh w0, [x1, #2] 1.04 lsr w3, w3, #8 0.88 strh w3, [x1] 0.95 lsr w3, w2, #16 0.20 uxtb w3, w3 0.88 and w0, w3, #0xf0 0.20 and w3, w3, #0xf 1.08 add w3, w3, w0, lsl #4 0.25 mov w0, #0xffff7677 // #-35209 0.99 add w3, w3, w0 1.13 neg w0, w3 and w0, w0, w4 0.88 add w3, w3, w0, lsr #4 0.16 mov w0, #0xb9b9 // #47545 1.06 add w3, w3, w0 0.81 uxtb w0, w3 1.01 strh w0, [x1, #6] 1.08 lsr w3, w3, #8 1.13 strh w3, [x1, #4] 1.13 lsr w3, w2, #8 0.74 uxtb w3, w3 0.32 and w0, w3, #0xf0 0.74 and w3, w3, #0xf 0.34 add w3, w3, w0, lsl #4 0.88 mov w0, #0xffff7677 // #-35209 0.92 add w3, w3, w0 1.04 neg w0, w3 and w0, w0, w4 1.17 add w3, w3, w0, lsr #4 0.14 mov w0, #0xb9b9 // #47545 0.77 add w3, w3, w0 0.34 uxtb w0, w3 0.90 strh w0, [x1, #10] 1.31 lsr w3, w3, #8 1.08 strh w3, [x1, #8] 0.86 uxtb w2, w2 0.02 and w3, w2, #0xf0 1.06 and w2, w2, #0xf 0.23 add w2, w2, w3, lsl #4 0.77 mov w3, #0xffff7677 // #-35209 0.72 add w2, w2, w3 0.20 neg w3, w2 1.15 and w3, w3, w4 0.11 add w2, w2, w3, lsr #4 1.04 mov w3, #0xb9b9 // #47545 1.10 add w2, w2, w3 0.16 uxtb w3, w2 0.88 strh w3, [x1, #14] 1.01 lsr w2, w2, #8 1.06 strh w2, [x1, #12] 0.81 1d0: str xzr, [x29, #16] 1.06 1d4: mov x0, x21 1.04 1d8: ldp x21, x22, [sp, #48] 0.92 ldp x19, x20, [sp, #32] 1.08 ldp x29, x30, [sp], #64 0.02 ← ret 1e8: mov x0, x19 ldr x1, [x19] ldr x1, [x1, #64] ldr x1, [x1, #8] → blr x1 ldp x21, x22, [sp, #48] ldp x19, x20, [sp, #32] ldp x29, x30, [sp], #64 ← ret 20c: cmp w0, #0x7 ↓ b.hi 22c mov w0, w0 adr x1, instance string [System.Private.CoreLib] System.Enum::ToString(string)[OptimizedTier1]+0xa80 ldr w1, [x1, x0, lsl #2] adr x2, instance string [System.Private.CoreLib] System.Enum::ToString(string)[OptimizedTier1]+0x18 add x1, x1, x2 → br x1 22c: mov x0, x21 mov w1, w20 mov x2, x22 mov x3, #0xd4b8 // #54456 movk x3, #0xe1fd, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 ↑ b 1d8 mov x0, x21 mov w1, w20 mov x2, x22 mov x3, #0xcac8 // #51912 movk x3, #0xe1fd, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 ↑ b 1d8 ldrb w19, [x22] orr w20, w20, #0x20 sub w0, w20, #0x64 cmp w0, #0x3 ↓ b.hi 2a0 mov w0, w0 adr x1, instance string [System.Private.CoreLib] System.Enum::ToString(string)[OptimizedTier1]+0xaa0 ldr w1, [x1, x0, lsl #2] adr x2, instance string [System.Private.CoreLib] System.Enum::ToString(string)[OptimizedTier1]+0x18 add x1, x1, x2 → br x1 2a0: cmp w20, #0x78 ↓ b.ne a64 str x22, [x29, #24] mov x21, x22 mov x0, #0xf48 // #3912 movk x0, #0xe204, lsl #16 movk x0, #0xf766, lsl #32 mov x1, #0x55a8 // #21928 movk x1, #0xe135, lsl #16 movk x1, #0xf766, lsl #32 ldr x1, [x1] → blr x1 mov x0, #0x3148 // #12616 movk x0, #0x35c0, lsl #16 movk x0, #0xf757, lsl #32 ldr x2, [x0] ↓ cbnz x2, 558 ↓ b 4a8 ldr x0, [x21, #16] ↓ cbz x0, 304 ldr x0, [x21, #16] ldr x20, [x0] ↓ cbz x20, 304 mov x0, x20 ↓ b 31c 304: mov x0, x21 mov x1, #0xf7b0 // #63408 movk x1, #0xe155, lsl #16 movk x1, #0xf766, lsl #32 ldr x1, [x1] → blr x1 31c: ldr x22, [x0, #128] ↓ cbz x22, 384 mov x1, x22 mov x0, #0x6490 // #25744 movk x0, #0xe1f8, lsl #16 movk x0, #0xf766, lsl #32 mov x2, #0x6838 // #26680 movk x2, #0xe135, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 ↓ cbz x0, 354 mov x2, x0 ↓ b 388 354: mov x1, x22 mov x0, #0xc200 // #49664 movk x0, #0xe166, lsl #16 movk x0, #0xf766, lsl #32 mov x2, #0x6838 // #26680 movk x2, #0xe135, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 ↓ cbz x0, 384 ldr x2, [x0, #40] ↓ b 388 384: mov x2, xzr 388: ↓ cbz x2, 394 ldr x0, [x2, #16] ↓ cbnz x0, 3b8 394: mov x0, x21 mov w1, #0x1 // #1 mov x2, #0xcc18 // #52248 movk x2, #0xe1fd, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 mov x2, x0 ↓ b 3b8 3b8: ldrb w0, [x2, #24] ↓ cbnz w0, 46c ldr x21, [x2, #16] ldrb w0, [x2, #25] ↓ cbz w0, 3e4 ldr w0, [x21, #8] cmp w0, w19 ↓ b.ls 464 add x0, x21, #0x10 ldr x0, [x0, w19, uxtw #3] ↓ b 468 3e4: ldr x0, [x2, #8] ↓ cbnz x0, 3f8 mov x3, xzr mov w2, wzr ↓ b 400 3f8: add x3, x0, #0x10 ldr w2, [x0, #8] 400: ldr w0, [x0, #8] cmp w0, #0x20 ↓ b.le 430 mov x0, x3 mov w1, w2 mov w2, w19 mov x3, #0xce88 // #52872 movk x3, #0xe1fd, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 ↓ b 44c 430: mov x0, x3 mov w1, w19 mov x3, #0x4438 // #17464 movk x3, #0xe1f3, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 44c: ldr w1, [x21, #8] cmp w1, w0 ↓ b.ls 464 add x1, x21, #0x10 ldr x0, [x1, w0, uxtw #3] ↓ b 468 464: mov x0, xzr 468: ↓ b 488 46c: mov x0, x2 mov w1, w19 mov x2, #0xcb10 // #51984 movk x2, #0xe1fd, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 488: ↓ cbnz x0, 66c 48c: mov w0, w19 mov x1, #0xcdb0 // #52656 movk x1, #0xe1dd, lsl #16 movk x1, #0xf766, lsl #32 ldr x1, [x1] → blr x1 ↓ b 66c 4a8: mov x0, #0x5970 // #22896 movk x0, #0xe1f8, lsl #16 movk x0, #0xf766, lsl #32 bl ffffffffff61cae8 mov x22, x0 mov x0, #0xf48 // #3912 movk x0, #0xe204, lsl #16 movk x0, #0xf766, lsl #32 mov x1, #0x55a8 // #21928 movk x1, #0xe135, lsl #16 movk x1, #0xf766, lsl #32 ldr x1, [x1] → blr x1 mov x14, #0x3140 // #12608 movk x14, #0x35c0, lsl #16 movk x14, #0xf757, lsl #32 ldr x15, [x14] ↓ cbnz x15, 508 mov x0, #0x7738 // #30520 movk x0, #0xe1b3, lsl #16 movk x0, #0xf766, lsl #32 ldr x0, [x0] → blr x0 brk #0xf000 508: add x14, x22, #0x10 bl fffffffffe2aad38 mov x0, #0x94a0 // #38048 movk x0, #0xe1fd, lsl #16 movk x0, #0xf766, lsl #32 str x0, [x22, #24] mov x0, #0xf48 // #3912 movk x0, #0xe204, lsl #16 movk x0, #0xf766, lsl #32 mov x1, #0x55a8 // #21928 movk x1, #0xe135, lsl #16 movk x1, #0xf766, lsl #32 ldr x1, [x1] → blr x1 mov x14, #0x3148 // #12616 movk x14, #0x35c0, lsl #16 movk x14, #0xf757, lsl #32 mov x15, x22 bl fffffffffe2aad38 mov x2, x22 558: mov x1, x21 mov w0, #0x2 // #2 mov x3, #0xd560 // #54624 movk x3, #0xe1f3, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 str xzr, [x29, #24] ↓ b 66c ldr x0, [x21, #16] ↓ cbz x0, 598 ldr x0, [x21, #16] ldr x20, [x0] ↓ cbz x20, 598 mov x0, x20 ↓ b 5b0 598: mov x0, x21 mov x1, #0xf7b0 // #63408 movk x1, #0xe155, lsl #16 movk x1, #0xf766, lsl #32 ldr x1, [x1] → blr x1 5b0: ldr x20, [x0, #128] ↓ cbz x20, 618 mov x1, x20 mov x0, #0x6490 // #25744 movk x0, #0xe1f8, lsl #16 movk x0, #0xf766, lsl #32 mov x2, #0x6838 // #26680 movk x2, #0xe135, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 ↓ cbz x0, 5e8 mov x2, x0 ↓ b 61c 5e8: mov x1, x20 mov x0, #0xc200 // #49664 movk x0, #0xe166, lsl #16 movk x0, #0xf766, lsl #32 mov x2, #0x6838 // #26680 movk x2, #0xe135, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 ↓ cbz x0, 618 ldr x2, [x0, #40] ↓ b 61c 618: mov x2, xzr 61c: ↓ cbz x2, 628 ldr x0, [x2, #16] ↓ cbnz x0, 64c 628: mov x0, x21 mov w1, #0x1 // #1 mov x2, #0xcc18 // #52248 movk x2, #0xe1fd, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 mov x2, x0 ↓ b 64c 64c: mov x0, x2 mov w1, w19 mov x2, #0xcb10 // #51984 movk x2, #0xe1fd, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 ↑ cbz x0, 48c 66c: ↑ b 1d8 mov x0, x21 mov w1, w20 mov x2, x22 mov x3, #0xca98 // #51864 movk x3, #0xe1fd, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 ↑ b 1d8 mov x0, x21 mov w1, w20 mov x2, x22 mov x3, #0xca80 // #51840 movk x3, #0xe1fd, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 ↑ b 1d8 6b8: mov w0, w20 adr x1, instance string [System.Private.CoreLib] System.Enum::ToString(string)[OptimizedTier1]+0xab0 ldr w1, [x1, x0, lsl #2] adr x2, instance string [System.Private.CoreLib] System.Enum::ToString(string)[OptimizedTier1]+0x18 add x1, x1, x2 → br x1 ldr x0, [x21, #16] ↓ cbz x0, 6ec ldr x0, [x21, #16] ldr x20, [x0] ↓ cbz x20, 6ec mov x0, x20 ↓ b 704 6ec: mov x0, x21 mov x1, #0xf7b0 // #63408 movk x1, #0xe155, lsl #16 movk x1, #0xf766, lsl #32 ldr x1, [x1] → blr x1 704: ldr x20, [x0, #128] ↓ cbz x20, 76c mov x1, x20 mov x0, #0xca80 // #51840 movk x0, #0xe170, lsl #16 movk x0, #0xf766, lsl #32 mov x2, #0x6838 // #26680 movk x2, #0xe135, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 ↓ cbz x0, 73c mov x2, x0 ↓ b 770 73c: mov x1, x20 mov x0, #0xc200 // #49664 movk x0, #0xe166, lsl #16 movk x0, #0xf766, lsl #32 mov x2, #0x6838 // #26680 movk x2, #0xe135, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 ↓ cbz x0, 76c ldr x2, [x0, #40] ↓ b 770 76c: mov x2, xzr 770: ↓ cbz x2, 77c ldr x0, [x2, #16] ↓ cbnz x0, 7a0 77c: mov x0, x21 mov w1, #0x1 // #1 mov x2, #0x6e38 // #28216 movk x2, #0xe16c, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 mov x2, x0 ↓ b 7a0 7a0: ldrb w0, [x2, #24] ↓ cbnz w0, 854 ldr x21, [x2, #16] ldrb w0, [x2, #25] ↓ cbz w0, 7cc ldr w0, [x21, #8] cmp w0, w19 ↓ b.ls 84c add x0, x21, #0x10 ldr x21, [x0, w19, uxtw #3] ↓ b 850 7cc: ldr x0, [x2, #8] ↓ cbnz x0, 7e0 mov x3, xzr mov w2, wzr ↓ b 7e8 7e0: add x3, x0, #0x10 ldr w2, [x0, #8] 7e8: ldr w0, [x0, #8] cmp w0, #0x20 ↓ b.le 818 mov x0, x3 mov w1, w2 mov w2, w19 mov x3, #0xd320 // #54048 movk x3, #0xe1fd, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 ↓ b 834 818: mov x0, x3 mov w1, w19 mov x3, #0x5c68 // #23656 movk x3, #0xe1b3, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 834: ldr w1, [x21, #8] cmp w1, w0 ↓ b.ls 84c add x1, x21, #0x10 ldr x21, [x1, w0, uxtw #3] ↓ b 850 84c: mov x21, xzr 850: ↓ b 874 854: mov x0, x2 mov w1, w19 mov x2, #0xd1b8 // #53688 movk x2, #0xe1fd, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 mov x21, x0 874: ↑ cbnz x21, 1d4 878: mov w0, w19 mov x1, #0xcd98 // #52632 movk x1, #0xe1dd, lsl #16 movk x1, #0xf766, lsl #32 ldr x1, [x1] → blr x1 mov x21, x0 ↑ b 1d4 898: mov x0, #0x5970 // #22896 movk x0, #0xe1f8, lsl #16 movk x0, #0xf766, lsl #32 bl ffffffffff61cae8 mov x20, x0 mov x14, #0x30b0 // #12464 movk x14, #0x35c0, lsl #16 movk x14, #0xf757, lsl #32 ldr x15, [x14] add x14, x20, #0x10 bl fffffffffe2aad38 mov x14, #0x9548 // #38216 movk x14, #0xe1f3, lsl #16 movk x14, #0xf766, lsl #32 str x14, [x20, #24] mov x14, #0x30b8 // #12472 movk x14, #0x35c0, lsl #16 movk x14, #0xf757, lsl #32 mov x15, x20 bl fffffffffe2aad38 ↑ b 98 8ec: mov w2, #0x8 // #8 mov x3, x22 ldp x0, x4, [x20, #16] → blr x4 ↑ b 1d0 ldr x0, [x21, #16] ↓ cbz x0, 91c ldr x0, [x21, #16] ldr x20, [x0] ↓ cbz x20, 91c mov x0, x20 ↓ b 934 91c: mov x0, x21 mov x1, #0xf7b0 // #63408 movk x1, #0xe155, lsl #16 movk x1, #0xf766, lsl #32 ldr x1, [x1] → blr x1 934: ldr x20, [x0, #128] ↓ cbz x20, 99c mov x1, x20 mov x0, #0xca80 // #51840 movk x0, #0xe170, lsl #16 movk x0, #0xf766, lsl #32 mov x2, #0x6838 // #26680 movk x2, #0xe135, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 ↓ cbz x0, 96c mov x2, x0 ↓ b 9a0 96c: mov x1, x20 mov x0, #0xc200 // #49664 movk x0, #0xe166, lsl #16 movk x0, #0xf766, lsl #32 mov x2, #0x6838 // #26680 movk x2, #0xe135, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 ↓ cbz x0, 99c ldr x2, [x0, #40] ↓ b 9a0 99c: mov x2, xzr 9a0: ↓ cbz x2, 9ac ldr x0, [x2, #16] ↓ cbnz x0, 9d0 9ac: mov x0, x21 mov w1, #0x1 // #1 mov x2, #0x6e38 // #28216 movk x2, #0xe16c, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 mov x2, x0 ↓ b 9d0 9d0: mov x0, x2 mov w1, w19 mov x2, #0xd1b8 // #53688 movk x2, #0xe1fd, lsl #16 movk x2, #0xf766, lsl #32 ldr x2, [x2] → blr x2 ↑ cbz x0, 878 mov x21, x0 ↑ b 1d4 mov x0, x21 mov w1, w20 mov x2, x22 mov x3, #0xca50 // #51792 movk x3, #0xe1fd, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 ↑ b 1d8 mov x0, x21 mov w1, w20 mov x2, x22 mov x3, #0xca38 // #51768 movk x3, #0xe1fd, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 ↑ b 1d8 mov x0, x21 mov w1, w20 mov x2, x22 mov x3, #0xca20 // #51744 movk x3, #0xe1fd, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] → blr x3 ↑ b 1d8 a64: mov x0, #0xd4d0 // #54480 movk x0, #0xe1fd, lsl #16 movk x0, #0xf766, lsl #32 ldr x0, [x0] → blr x0 bl ffffffffff61cb08 brk #0xf000 Samples: 25K of event 'cpu-clock', 4999 Hz, Event count (approx.): 5007801360, [percent: local period] RhpNewFast() /home/egorbot_work/core_roots/00fc09ea5b2e39c46d56fda130b6693e07d449d8/libcoreclr.so 1.94 stp x0, x30, [sp, #-16]! 0.78 adrp x0, __getauxval@plt+0x2bcb0 2.95 ldr x3, [x0, #976] 2.40 add x0, x0, #0x3d0 2.49 → blr x3 5.70 mrs x3, tpidr_el0 1.49 add x3, x3, x0 1.55 ldp x0, x30, [sp], #16 3.43 ldr w2, [x0, #4] 3.95 ldr x12, [x3, #8] 43.39 ldr x13, [x3] 2.27 sub x13, x13, x12 1.88 cmp x2, x13 0.06 ↓ b.hi 4c 20.60 add x2, x2, x12 1.68 str x0, [x12] 1.52 str x2, [x3, #8] 1.59 mov x0, x12 0.23 ← ret 4c: mov x1, #0x0 // #0 0.10 → b RhpNewObject Samples: 25K of event 'cpu-clock', 4999 Hz, Event count (approx.): 5007801360, [percent: local period] RhNewString() /home/egorbot_work/core_roots/00fc09ea5b2e39c46d56fda130b6693e07d449d8/libcoreclr.so 2.46 mov x2, #0xffdf // #65503 0.85 movk x2, #0x3fff, lsl #16 2.56 cmp x1, x2 ↓ b.hi 6c 2.66 mov w2, #0x2 // #2 0.25 mov x3, #0x1d // #29 1.71 umaddl x2, w1, w2, x3 0.90 and x2, x2, #0xfffffffffffffff8 2.51 stp x0, x30, [sp, #-16]! 0.55 adrp x0, __getauxval@plt+0x2bcb0 4.16 ldr x3, [x0, #976] 1.30 add x0, x0, #0x3d0 2.46 → blr x3 4.26 mrs x3, tpidr_el0 2.51 add x3, x3, x0 1.91 ldp x0, x30, [sp], #16 5.62 ldr x12, [x3, #8] 23.42 ldr x13, [x3] 4.26 sub x13, x13, x12 2.16 cmp x2, x13 → b.hi RhpNewVariableSizeObject 22.92 add x2, x2, x12 1.81 str x0, [x12] 2.51 str x1, [x12, #8] 1.91 str x2, [x3, #8] 1.86 mov x0, x12 2.51 ← ret 6c: mov x1, #0x1 // #1 → b 49bd18 Samples: 25K of event 'cpu-clock', 4999 Hz, Event count (approx.): 5007801360, [percent: local period] instance string [benchapp] Perf_Enum::ToString_Format_NonFlags(valuetype [System.Runtime]System.DayOfWeek,string)[OptimizedTier1]() /tmp/jitted-40838-27637.so 18.53 stp x29, x30, [sp, #-32]! 8.76 stp x19, x20, [sp, #16] 3.88 mov x29, sp 0.76 mov w20, w1 5.14 mov x19, x2 2.70 mov x0, #0x49d0 // #18896 4.30 movk x0, #0xe198, lsl #16 0.34 movk x0, #0xf766, lsl #32 3.79 bl ffffffffff61cb50 4.63 str w20, [x0, #8] 3.29 mov x1, x19 1.94 mov x2, #0xd518 // #54552 1.77 movk x2, #0xe1f3, lsl #16 2.78 movk x2, #0xf766, lsl #32 3.37 ldr x2, [x2] 2.95 → blr x2 8.85 ldp x19, x20, [sp, #16] 10.45 ldp x29, x30, [sp], #32 11.79 ← ret Samples: 25K of event 'cpu-clock', 4999 Hz, Event count (approx.): 5007801360, [percent: local period] instance valuetype [System.Private.CoreLib]System.Threading.Tasks.ValueTask`1 [benchapp-InProcess-1Emitted] BenchmarkDotNet.Autogenerated.Runnable_0::WorkloadActionUnroll(int64,class [Perfolizer]Perfolizer.Horology.IClock)[Optimized]() /tmp/jitted-40838-27762.so Percent stp x29, x30, [sp, #-80]! stp x19, x20, [sp, #16] stp x21, x22, [sp, #32] stp x23, x24, [sp, #48] stp x25, x26, [sp, #64] mov x29, sp mov x19, x0 mov x21, x8 mov x20, x1 mov x22, x2 ldr w23, [x19, #16] ldr x24, [x19, #8] mov x0, x22 mov x25, #0xa018 // #40984 movk x25, #0xe1e3, lsl #16 movk x25, #0xf766, lsl #32 mov x11, x25 ldr x16, [x11] → blr x16 mov x26, x0 sub x20, x20, #0x1 ↓ tbnz x20, #63, 260 1.64 58: mov x0, x19 0.55 mov w1, w23 0.55 mov x2, x24 0.14 mov x3, #0xd500 // #54528 movk x3, #0xe1f3, lsl #16 movk x3, #0xf766, lsl #32 0.41 ldr x3, [x3] 3.83 → blr x3 0.68 mov x0, x19 0.27 mov w1, w23 0.27 mov x2, x24 mov x3, #0xd500 // #54528 0.27 movk x3, #0xe1f3, lsl #16 0.14 movk x3, #0xf766, lsl #32 0.14 ldr x3, [x3] 4.10 → blr x3 1.64 mov x0, x19 0.55 mov w1, w23 0.14 mov x2, x24 0.27 mov x3, #0xd500 // #54528 0.27 movk x3, #0xe1f3, lsl #16 0.27 movk x3, #0xf766, lsl #32 0.14 ldr x3, [x3] 2.87 → blr x3 1.64 mov x0, x19 0.27 mov w1, w23 0.27 mov x2, x24 0.14 mov x3, #0xd500 // #54528 0.68 movk x3, #0xe1f3, lsl #16 movk x3, #0xf766, lsl #32 0.41 ldr x3, [x3] 1.64 → blr x3 0.96 mov x0, x19 0.55 mov w1, w23 0.14 mov x2, x24 0.27 mov x3, #0xd500 // #54528 0.14 movk x3, #0xe1f3, lsl #16 0.27 movk x3, #0xf766, lsl #32 0.41 ldr x3, [x3] 2.33 → blr x3 1.37 mov x0, x19 0.68 mov w1, w23 0.55 mov x2, x24 mov x3, #0xd500 // #54528 0.82 movk x3, #0xe1f3, lsl #16 0.14 movk x3, #0xf766, lsl #32 0.68 ldr x3, [x3] 2.87 → blr x3 0.96 mov x0, x19 0.27 mov w1, w23 0.14 mov x2, x24 0.41 mov x3, #0xd500 // #54528 0.27 movk x3, #0xe1f3, lsl #16 movk x3, #0xf766, lsl #32 0.14 ldr x3, [x3] 3.56 → blr x3 2.05 mov x0, x19 0.41 mov w1, w23 0.96 mov x2, x24 mov x3, #0xd500 // #54528 0.27 movk x3, #0xe1f3, lsl #16 0.14 movk x3, #0xf766, lsl #32 0.14 ldr x3, [x3] 2.87 → blr x3 0.96 mov x0, x19 0.55 mov w1, w23 0.55 mov x2, x24 mov x3, #0xd500 // #54528 0.68 movk x3, #0xe1f3, lsl #16 movk x3, #0xf766, lsl #32 1.23 ldr x3, [x3] 2.60 → blr x3 1.64 mov x0, x19 0.82 mov w1, w23 0.27 mov x2, x24 0.14 mov x3, #0xd500 // #54528 movk x3, #0xe1f3, lsl #16 movk x3, #0xf766, lsl #32 0.82 ldr x3, [x3] 3.69 → blr x3 1.78 mov x0, x19 0.68 mov w1, w23 0.27 mov x2, x24 0.14 mov x3, #0xd500 // #54528 0.41 movk x3, #0xe1f3, lsl #16 movk x3, #0xf766, lsl #32 0.41 ldr x3, [x3] 3.28 → blr x3 1.09 mov x0, x19 0.41 mov w1, w23 0.27 mov x2, x24 mov x3, #0xd500 // #54528 0.14 movk x3, #0xe1f3, lsl #16 movk x3, #0xf766, lsl #32 0.14 ldr x3, [x3] 3.15 → blr x3 1.37 mov x0, x19 0.27 mov w1, w23 0.14 mov x2, x24 0.41 mov x3, #0xd500 // #54528 0.27 movk x3, #0xe1f3, lsl #16 0.27 movk x3, #0xf766, lsl #32 0.68 ldr x3, [x3] 3.28 → blr x3 0.82 mov x0, x19 0.14 mov w1, w23 0.55 mov x2, x24 0.41 mov x3, #0xd500 // #54528 movk x3, #0xe1f3, lsl #16 movk x3, #0xf766, lsl #32 0.55 ldr x3, [x3] 3.01 → blr x3 1.23 mov x0, x19 0.27 mov w1, w23 mov x2, x24 0.41 mov x3, #0xd500 // #54528 0.55 movk x3, #0xe1f3, lsl #16 0.27 movk x3, #0xf766, lsl #32 0.41 ldr x3, [x3] 3.28 → blr x3 1.50 mov x0, x19 0.27 mov w1, w23 0.55 mov x2, x24 0.14 mov x3, #0xd500 // #54528 0.41 movk x3, #0xe1f3, lsl #16 movk x3, #0xf766, lsl #32 ldr x3, [x3] 2.60 → blr x3 0.68 sub x20, x20, #0x1 0.14 ↑ tbz x20, #63, 58 260: mov x0, x22 add x11, x25, #0x8 ldr x16, [x11] → blr x16 mov x19, x0 mov x0, x22 add x11, x25, #0x10 ldr x16, [x11] → blr x16 str xzr, [x21] strh wzr, [x21, #8] mov w0, #0x1 // #1 strb w0, [x21, #10] stp x26, x19, [x21, #16] str d0, [x21, #32] ldp x25, x26, [sp, #64] ldp x23, x24, [sp, #48] ldp x21, x22, [sp, #32] ldp x19, x20, [sp, #16] ldp x29, x30, [sp], #80 ← ret Samples: 25K of event 'cpu-clock', 4999 Hz, Event count (approx.): 5007801360, [percent: local period] MethodTableNative::GetPrimitiveCorElementType(MethodTable*)() /home/egorbot_work/core_roots/00fc09ea5b2e39c46d56fda130b6693e07d449d8/libcoreclr.so 10.47 ldr x8, [x0, #40] 11.07 ↓ tbz w8, #0, 10 and x8, x8, #0xfffffffffffffffe ldr x8, [x8, #40] 10.47 10: ldrb w0, [x8, #48] 67.98 ← ret