Samples: 58K of event 'cycles:P', 857 Hz, Event count (approx.): 174562190128, [percent: local period] RhpNewFast() /home/egorbot_work/orchard_runs/main/libcoreclr.so Percent Disassembly of section .text: 000000000048d8f4 : 1.57 stp x0, x30, [sp, #-16]! 2.84 adrp x0, __getauxval@plt+0x2b3f0 0.60 ldr x3, [x0, #2808] 1.70 add x0, x0, #0xaf8 0.37 → blr x3 1.11 mrs x3, tpidr_el0 0.73 add x3, x3, x0 0.56 ldp x0, x30, [sp], #16 0.98 ldr w2, [x0, #4] 78.91 ldr x12, [x3, #8] 3.38 ldr x13, [x3] 0.42 sub x13, x13, x12 0.68 cmp x2, x13 0.05 ↓ b.hi 4c 3.59 add x2, x2, x12 0.37 str x0, [x12] 0.92 str x2, [x3, #8] 0.37 mov x0, x12 0.42 ← ret 0.14 4c: mov x1, #0x0 // #0 0.28 → b RhpNewObject Samples: 58K of event 'cycles:P', 857 Hz, Event count (approx.): 174562190128, [percent: local period] instance bool [System.Text.Json] System.Text.Json.Utf8JsonReader::ConsumeStringAndValidate(valuetype [System.Runtime]System.ReadOnlySpan`1,int32)[OptimizedTier1]() /tmp/jitted-41389-177933.so Percent Disassembly of section .text: 0000000000000080 ,int32)[OptimizedTier1]>: 0.14 stp x29, x30, [sp, #-48]! stp x19, x20, [sp, #24] str x21, [sp, #40] mov x29, sp mov x19, x0 ldp x20, x4, [x19] 0.07 mov x21, x4 add w0, w3, #0x1 add x4, x4, w0, sxtw str x4, [x19, #8] 0.07 mov w4, wzr mov x0, #0x7e00 // #32256 movk x0, #0x7e00, lsl #32 movk x0, #0xffc0, lsl #48 cmp w3, w2 ↓ b.lt 15c 40: cmp w3, w2 ↓ b.lt 1ec ↓ b 344 0.14 4c: mov x4, #0xf473 // #62579 movk x4, #0xeb7, lsl #16 0.07 movk x4, #0xe74e, lsl #32 mov x6, xzr 0.14 mov w7, wzr 0.14 60: add x8, x6, #0x1 ldrb w8, [x4, x8, lsl #0] 0.07 cmp w8, w5 ↓ b.eq 134 add x8, x6, #0x2 0.07 ldrb w8, [x4, x8, lsl #0] 0.14 cmp w8, w5 ↓ b.eq 12c 0.07 add x8, x6, #0x3 ldrb w8, [x4, x8, lsl #0] cmp w8, w5 ↓ b.eq 284 0.21 add x8, x6, #0x4 0.28 ldrb w8, [x4, x8, lsl #0] 0.07 cmp w8, w5 ↓ b.eq 124 0.20 add x8, x6, #0x5 ldrb w8, [x4, x8, lsl #0] 0.07 cmp w8, w5 ↓ b.ne 250 0.14 add w6, w6, #0x5 b4: cmn w6, #0x1 ↓ b.eq 1b0 cmp w5, #0x75 ↓ b.ne 140 0.22 ldr x4, [x19, #8] add x4, x4, #0x1 1.71 str x4, [x19, #8] 0.14 add w4, w3, #0x1 mov w5, w4 0.14 cmp w4, w2 ↓ b.ge 33c 0.07 e0: ldrb w6, [x1, w5, uxtw #0] 0.07 sub w7, w6, #0x30 0.50 mov w7, w7 0.13 lsl x8, x0, x7 0.35 sub x7, x7, #0x40 0.22 ands x7, x8, x7 0.07 ↓ b.ge 310 0.71 sub w6, w5, w4 0.72 cmp w6, #0x3 ↓ b.ge 13c 0.06 ldr x6, [x19, #8] 0.58 add x6, x6, #0x1 9.44 str x6, [x19, #8] 0.21 add w5, w5, #0x1 0.35 cmp w5, w2 ↑ b.lt e0 ↓ b 33c 124: add w6, w6, #0x4 ↑ b b4 12c: add w6, w6, #0x2 ↑ b b4 0.07 134: add w6, w6, #0x1 ↑ b b4 13c: add w3, w3, #0x4 140: mov w4, wzr 2.71 144: ldr x5, [x19, #8] 1.22 add x5, x5, #0x1 60.98 str x5, [x19, #8] 2.26 add w3, w3, #0x1 2.26 cmp w3, w2 ↑ b.ge 40 1.58 15c: cmp w3, w2 ↓ b.cs 3bc 3.68 ldrb w5, [x1, w3, uxtw #0] 1.76 cmp w5, #0x22 ↓ b.eq 1e8 1.94 cmp w5, #0x5c ↓ b.eq 1dc 1.71 ↑ cbnz w4, 4c 1.41 cmp w5, #0x20 0.07 ↑ b.ge 144 mov x3, xzr mov w4, wzr mov x0, x19 mov w2, w5 mov w1, #0x13 // #19 mov x5, #0xdbc0 // #56256 movk x5, #0xc9c2, lsl #16 movk x5, #0xe74d, lsl #32 ldr x5, [x5] → blr x5 brk #0xf000 1b0: mov x3, xzr mov w4, wzr mov x0, x19 mov w2, w5 mov w1, #0x14 // #20 mov x5, #0xdbc0 // #56256 movk x5, #0xc9c2, lsl #16 movk x5, #0xe74d, lsl #32 ldr x5, [x5] → blr x5 brk #0xf000 0.14 1dc: cmp w4, #0x0 0.07 cset x4, eq // eq = none 0.07 ↑ b 144 1e8: ↑ cbnz w4, 140 1ec: ldr x0, [x19, #8] 0.08 add x0, x0, #0x1 str x0, [x19, #8] cmp w3, w2 ↓ b.hi 3a4 str x1, [x19, #152] 0.07 str w3, [x19, #160] mov w0, #0x1 // #1 strb w0, [x19, #46] mov w0, #0x7 // #7 0.07 strb w0, [x19, #40] ldr w0, [x19, #32] add w0, w0, w3 add w0, w0, #0x2 str w0, [x19, #32] mov w0, #0x1 // #1 ldr x21, [sp, #40] ldp x19, x20, [sp, #24] ldp x29, x30, [sp], #48 ← ret 23c: sub w7, w7, #0x8 ldrb w8, [x4, x6, lsl #0] cmp w8, w5 ↑ b.ne 60 ↓ b 280 250: add x8, x6, #0x6 ldrb w8, [x4, x8, lsl #0] cmp w8, w5 ↓ b.eq 28c add x8, x6, #0x7 ldrb w8, [x4, x8, lsl #0] cmp w8, w5 ↓ b.eq 294 add x6, x6, #0x8 cmp w7, #0x8 ↑ b.ge 23c ↓ b 29c 280: ↑ b b4 284: add w6, w6, #0x3 ↑ b b4 28c: add w6, w6, #0x6 ↑ b b4 294: add w6, w6, #0x7 ↑ b b4 29c: cmp w7, #0x4 ↓ b.lt 304 sub w7, w7, #0x4 ldrb w8, [x4, x6, lsl #0] cmp w8, w5 ↑ b.eq 280 add x8, x6, #0x1 ldrb w8, [x4, x8, lsl #0] cmp w8, w5 ↑ b.eq 134 add x8, x6, #0x2 ldrb w8, [x4, x8, lsl #0] cmp w8, w5 ↑ b.eq 12c add x8, x6, #0x3 ldrb w8, [x4, x8, lsl #0] cmp w8, w5 ↑ b.eq 284 add x6, x6, #0x4 cmp w7, #0x0 ↑ b.le 1b0 2f0: sub w7, w7, #0x1 ldrb w8, [x4, x6, lsl #0] cmp w8, w5 ↑ b.eq 280 add x6, x6, #0x1 304: cmp w7, #0x0 ↑ b.gt 2f0 ↑ b 1b0 310: mov x3, xzr mov w4, wzr mov x0, x19 mov w2, w6 mov w1, #0x15 // #21 mov x5, #0xdbc0 // #56256 movk x5, #0xc9c2, lsl #16 movk x5, #0xe74d, lsl #32 ldr x5, [x5] → blr x5 brk #0xf000 33c: mov w3, w2 ↑ b 40 344: mov x0, x19 mov x1, #0xdc98 // #56472 movk x1, #0xc9c2, lsl #16 movk x1, #0xe74d, lsl #32 ldr x1, [x1] → blr x1 ↓ cbz w0, 38c mov x3, xzr mov w4, wzr mov x0, x19 mov w1, #0x2 // #2 mov w2, wzr mov x5, #0xdbc0 // #56256 movk x5, #0xc9c2, lsl #16 movk x5, #0xe74d, lsl #32 ldr x5, [x5] → blr x5 brk #0xf000 38c: stp x20, x21, [x19] mov w0, wzr ldr x21, [sp, #40] ldp x19, x20, [sp, #24] ldp x29, x30, [sp], #48 ← ret 3a4: mov x0, #0xc7f8 // #51192 movk x0, #0xca9c, lsl #16 movk x0, #0xe74d, lsl #32 ldr x0, [x0] → blr x0 brk #0xf000 3bc: bl fffffffff8405f38 ,int32)[OptimizedTier1]+0xfffffffff8405eb8> brk #0xf000 Samples: 58K of event 'cycles:P', 857 Hz, Event count (approx.): 174562190128, [percent: local period] stub<1> WriteBarrier() /tmp/jitted-41389-1.so Percent Disassembly of section .text: 0000000000000080 WriteBarrier>: ... Samples: 58K of event 'cycles:P', 857 Hz, Event count (approx.): 174562190128, [percent: local period] instance void [System.Text.Json] System.Text.Json.Utf8JsonWriter::WriteStringEscapeValue(valuetype [System.Runtime]System.ReadOnlySpan`1,int32)[OptimizedTier1]() /tmp/jitted-41389-179025.so Percent Disassembly of section .text: 0000000000000080 ,int32)[OptimizedTier1]>: sub sp, sp, #0xa0 stp x19, x20, [sp, #64] stp x21, x22, [sp, #80] stp x23, x24, [sp, #96] stp x25, x26, [sp, #112] stp x27, x28, [sp, #128] stp x29, x30, [sp, #144] add x29, sp, #0x90 mov x4, #0x95b7 // #38327 movk x4, #0xd8de, lsl #16 movk x4, #0xad2, lsl #32 movk x4, #0x51af, lsl #48 stur x4, [x29, #-88] mov x19, x0 mov w20, w3 mov x21, x1 mov w22, w2 mov x23, xzr sub w0, w22, w20 mov w1, #0x6 // #6 madd w1, w0, w1, w20 cmp w1, #0x100 0.12 ↓ b.le 4e0 mov x0, #0x638 // #1592 movk x0, #0xb800, lsl #16 movk x0, #0xe70d, lsl #32 ldr x0, [x0] mov x2, #0x2d58 // #11608 movk x2, #0xc9cc, lsl #16 movk x2, #0xe74d, lsl #32 ldr x2, [x2] → blr x2 mov x23, x0 ↓ cbz x23, 4f0 add x24, x23, #0x10 ldr w25, [x23, #8] 0.97 90: ldr x26, [x19, #112] mov x27, x21 mov w28, w22 mov x0, x24 mov w2, w25 mov w3, w20 cmp w3, w28 ↓ b.hi 4fc cmp w3, w2 ↓ b.hi 514 stur w3, [x29, #-100] mov w2, w3 mov x1, x27 mov x4, #0x5680 // #22144 movk x4, #0xc93a, lsl #16 movk x4, #0xe74d, lsl #32 ldr x4, [x4] → blr x4 ldur w4, [x29, #-100] stur w4, [x29, #-96] mov w1, w4 ↓ cbnz x26, 488 cmp w1, w28 ↓ b.ge 2bc ↓ tbnz w1, #31, 198 ↓ b 124 13.10 f8: ldur w20, [x29, #-96] 6.85 cmp w20, w25 ↓ b.cs 64c 5.94 strb w0, [x24, w20, uxtw #0] 5.06 ldur w1, [x29, #-96] 0.35 add w1, w1, #0x1 1.30 stur w1, [x29, #-96] 2.02 114: ldur w4, [x29, #-100] 0.73 add w4, w4, #0x1 2.04 cmp w4, w28 0.12 ↓ b.ge 2bc 6.41 124: stur w4, [x29, #-100] 1.91 ldrb w0, [x27, w4, uxtw #0] 8.78 cmp w0, #0x7f ↓ b.gt 1e8 6.69 mov x1, #0xf48b // #62603 movk x1, #0xeb7, lsl #16 1.81 movk x1, #0xe74e, lsl #32 1.92 ldrb w1, [x1, w0, uxtw #0] 31.03 ↑ cbnz w1, f8 0.96 mov x1, x24 0.12 mov w2, w25 sub x3, x29, #0x60 mov x5, #0x76c0 // #30400 movk x5, #0xce9d, lsl #16 movk x5, #0xe74d, lsl #32 0.23 ldr x5, [x5] 0.12 → blr x5 0.36 ↑ b 114 16c: ldur w20, [x29, #-96] cmp w20, w25 ↓ b.cs 64c strb w0, [x24, w20, uxtw #0] ldur w1, [x29, #-96] add w1, w1, #0x1 stur w1, [x29, #-96] 188: ldur w4, [x29, #-100] add w4, w4, #0x1 cmp w4, w28 ↓ b.ge 2bc 198: cmp w4, w28 ↓ b.cs 64c stur w4, [x29, #-100] ldrb w0, [x27, w4, uxtw #0] cmp w0, #0x7f ↓ b.gt 1e8 mov x1, #0xf48b // #62603 movk x1, #0xeb7, lsl #16 movk x1, #0xe74e, lsl #32 ldrb w1, [x1, w0, uxtw #0] ↑ cbnz w1, 16c mov x1, x24 mov w2, w25 sub x3, x29, #0x60 mov x5, #0x76c0 // #30400 movk x5, #0xce9d, lsl #16 movk x5, #0xe74d, lsl #32 ldr x5, [x5] → blr x5 ↑ b 188 1e8: ldur w0, [x29, #-96] cmp w0, w25 ↓ b.hi 4fc mov w1, w0 add x21, x24, x1 sub w22, w25, w0 ldur w4, [x29, #-100] cmp w4, w28 ↓ b.hi 4fc mov w0, w4 add x26, x27, x0 sub w20, w28, w4 mov x0, #0x5850 // #22608 movk x0, #0xb800, lsl #16 movk x0, #0xe70d, lsl #32 ldr x27, [x0] mov w28, w20 cmp w22, w28 ↓ b.ge 240 cmp w22, w20 ↓ b.hi 4fc mov w28, w22 240: ldr x0, [x27, #8] mov x1, x26 mov w2, w28 mov x3, #0x7f30 // #32560 movk x3, #0xcee7, lsl #16 movk x3, #0xe74d, lsl #32 ldr x3, [x3] ldr wzr, [x0] → blr x3 mov w3, w0 cmp w3, #0x0 csel w3, w3, w28, ge // ge = tcont cmp w3, w20 ↓ b.hi 4fc cmp w3, w22 ↓ b.hi 514 stur w3, [x29, #-124] mov w2, w3 mov x0, x21 mov x1, x26 mov x4, #0x5680 // #22144 movk x4, #0xc93a, lsl #16 movk x4, #0xe74d, lsl #32 ldr x4, [x4] → blr x4 ldur w28, [x29, #-124] cmp w28, w20 ↓ b.ne 434 2b0: ldur w0, [x29, #-96] add w0, w0, w20 stur w0, [x29, #-96] 2bc: ldur w20, [x29, #-96] 0.22 cmp w20, w25 ↓ b.hi 4fc ldr w0, [x19, #124] ↓ tbz w0, #1, 598 0.12 2d0: ldr w0, [x19, #124] ↓ tbnz w0, #0, 5d0 add w1, w20, #0x3 ldr w0, [x19, #76] ldr w2, [x19, #52] sub w0, w0, w2 0.12 cmp w0, w1 ↓ b.lt 5f4 2f0: add x21, x19, #0x40 mov x22, xzr mov w25, wzr ldr x0, [x21] ↓ cbz x0, 33c ldr x1, [x0] ldr w1, [x1] 0.24 tst w1, #0x80000000 ↓ b.eq 610 add x22, x0, #0x10 ldr w25, [x0, #8] 31c: ldp w2, w0, [x21, #8] and w2, w2, #0x7fffffff mov w2, w2 add x1, x2, w0, uxtw cmp x1, w25, uxtw ↓ b.hi 4fc add x22, x22, x2 mov w25, w0 33c: ldr w2, [x19, #40] 0.11 ↓ tbnz w2, #31, 62c 344: ldr w21, [x19, #52] 0.12 add w2, w21, #0x1 str w2, [x19, #52] 0.12 cmp w21, w25 ↓ b.cs 64c mov w2, #0x22 // #34 strb w2, [x22, w21, uxtw #0] ldr w2, [x19, #52] cmp w2, w25 ↓ b.hi 4fc mov w0, w2 add x0, x22, x0 sub w2, w25, w2 cmp w20, w2 ↓ b.hi 514 mov w2, w20 mov x1, x24 mov x3, #0x5680 // #22144 movk x3, #0xc93a, lsl #16 movk x3, #0xe74d, lsl #32 ldr x3, [x3] → blr x3 ldr w1, [x19, #52] add w21, w1, w20 str w21, [x19, #52] add w1, w21, #0x1 str w1, [x19, #52] cmp w21, w25 ↓ b.cs 64c mov w1, #0x22 // #34 strb w1, [x22, w21, uxtw #0] 3c0: ↓ cbz x23, 3f0 mov x0, #0x638 // #1592 movk x0, #0xb800, lsl #16 movk x0, #0xe70d, lsl #32 ldr x0, [x0] mov x1, x23 mov w2, wzr mov x3, #0x2d60 // #11616 movk x3, #0xc9cc, lsl #16 movk x3, #0xe74d, lsl #32 ldr x3, [x3] → blr x3 3f0: mov x16, #0x95b7 // #38327 movk x16, #0xd8de, lsl #16 movk x16, #0xad2, lsl #32 movk x16, #0x51af, lsl #48 ldur x17, [x29, #-88] cmp x16, x17 ↓ b.eq 410 bl fffffffff81bec88 ,int32)[OptimizedTier1]+0xfffffffff81bec08> 410: sub sp, x29, #0x90 ldp x29, x30, [sp, #144] ldp x27, x28, [sp, #128] ldp x25, x26, [sp, #112] ldp x23, x24, [sp, #96] ldp x21, x22, [sp, #80] ldp x19, x20, [sp, #64] add sp, sp, #0xa0 ← ret 434: mov w0, w28 add x1, x26, x0 sub w2, w20, w28 mov w0, w28 add x3, x21, x0 sub w4, w22, w28 ldr x0, [x27, #8] sub x5, x29, #0x88 sub x6, x29, #0x90 mov w7, #0x1 // #1 mov x8, #0x7f60 // #32608 movk x8, #0xcee7, lsl #16 movk x8, #0xe74d, lsl #32 ldr x8, [x8] ldr wzr, [x0] → blr x8 ldur w1, [x29, #-144] add w1, w28, w1 ↓ cbnz w0, 564 mov w20, w1 ↑ b 2b0 488: mov w1, w20 add x3, x24, x1 sub w4, w25, w20 mov w1, w20 add x21, x21, x1 sub w20, w22, w20 mov x1, x21 mov w2, w20 sub x6, x29, #0x78 sub x5, x29, #0x70 mov x0, x26 mov w7, #0x1 // #1 ldr x8, [x26] ldr x8, [x8, #72] ldr x8, [x8, #24] → blr x8 ↓ cbnz w0, 52c ldur w0, [x29, #-96] ldur w1, [x29, #-120] add w0, w0, w1 stur w0, [x29, #-96] ↑ b 2bc 4e0: ldr wzr, [sp], #-256 mov x24, sp mov w25, #0x100 // #256 ↑ b 90 4f0: mov x24, xzr mov w25, wzr ↑ b 90 4fc: mov x0, #0xc7f8 // #51192 movk x0, #0xca9c, lsl #16 movk x0, #0xe74d, lsl #32 ldr x0, [x0] → blr x0 brk #0xf000 514: mov x0, #0xc8d0 // #51408 movk x0, #0xca9c, lsl #16 movk x0, #0xe74d, lsl #32 ldr x0, [x0] → blr x0 brk #0xf000 52c: ldur w0, [x29, #-120] cmp w0, w20 ↑ b.hi 4fc mov w1, w0 add x1, x21, x1 sub w2, w20, w0 mov x0, x1 mov w1, w2 mov x2, #0x7f00 // #32512 movk x2, #0xcee7, lsl #16 movk x2, #0xe74d, lsl #32 ldr x2, [x2] → blr x2 brk #0xf000 564: mov w24, w20 mov w20, w1 cmp w20, w24 ↑ b.hi 4fc mov w0, w20 add x0, x26, x0 sub w1, w24, w20 mov x2, #0x7f00 // #32512 movk x2, #0xcee7, lsl #16 movk x2, #0xe74d, lsl #32 ldr x2, [x2] → blr x2 brk #0xf000 598: mov x0, x19 mov x1, #0x7c48 // #31816 movk x1, #0xd103, lsl #16 movk x1, #0xe74d, lsl #32 ldr x1, [x1] → blr x1 ↑ cbnz w0, 2d0 mov x0, x19 mov x1, #0x7c60 // #31840 movk x1, #0xd103, lsl #16 movk x1, #0xe74d, lsl #32 ldr x1, [x1] → blr x1 ↑ b 2d0 5d0: mov x1, x24 mov w2, w20 mov x0, x19 mov x3, #0xd1b8 // #53688 movk x3, #0xcca7, lsl #16 movk x3, #0xe74d, lsl #32 ldr x3, [x3] → blr x3 ↑ b 3c0 5f4: mov x0, x19 mov x2, #0xc3c0 // #50112 movk x2, #0xcca7, lsl #16 movk x2, #0xe74d, lsl #32 ldr x2, [x2] → blr x2 ↑ b 2f0 610: ldr x1, [x0] ldr x1, [x1, #64] ldr x1, [x1, #40] → blr x1 mov x22, x0 mov w25, w1 ↑ b 31c 62c: ldr w21, [x19, #52] add w2, w21, #0x1 str w2, [x19, #52] cmp w21, w25 ↓ b.cs 64c mov w2, #0x2c // #44 strb w2, [x22, w21, uxtw #0] ↑ b 344 64c: bl fffffffff814df58 ,int32)[OptimizedTier1]+0xfffffffff814ded8> brk #0xf000 Samples: 58K of event 'cycles:P', 857 Hz, Event count (approx.): 174562190128, [percent: local period] instance bool [System.Private.CoreLib] System.Collections.Generic.Dictionary`2[Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceCacheKey,System.__Canon]::TryGetValue(!0,!1&)[OptimizedTier1]() /tmp/jitted-41389-176379.so Percent Disassembly of section .text: 0000000000000080 : 0.99 stp x29, x30, [sp, #-144]! 0.71 stp x19, x20, [sp, #64] 0.15 stp x21, x22, [sp, #80] 0.15 stp x23, x24, [sp, #96] 0.29 stp x25, x26, [sp, #112] 0.14 stp x27, x28, [sp, #128] 0.15 mov x29, sp 0.46 add x9, x29, #0x10 movi v16.16b, #0x0 0.44 stp q16, q16, [x9] 0.58 stp xzr, xzr, [x9, #32] 0.67 mov x20, x0 0.14 mov x19, x1 0.43 mov x21, x2 0.15 ldr x0, [x20, #8] 0.29 ↓ cbz x0, 1e8 0.44 ldr x22, [x20, #24] 0.39 ↓ cbnz x22, 2b0 0.14 ldr w22, [x19] 0.29 ldp x23, x24, [x19, #8] 0.59 ↓ cbnz x23, 224 ldr x0, [x24] 15.08 mov x1, #0xa320 // #41760 12.17 movk x1, #0xc805, lsl #16 0.15 movk x1, #0xe74d, lsl #32 0.29 cmp x0, x1 ↓ b.ne 20c 0.70 mov x0, x24 0.29 bl fffffffff84f03a8 0.12 ↓ cbz w0, 158 0.73 78: mov w1, #0x18d // #397 mul w0, w0, w1 0.15 eor w22, w0, w22 0.29 ldr x0, [x20, #8] 0.83 ldr x1, [x20, #48] 0.29 mov w2, w22 0.15 mul x1, x1, x2 0.44 lsr x1, x1, #32 0.13 add x1, x1, #0x1 0.15 ldr w2, [x0, #8] 3.44 mov w3, w2 0.14 mul x1, x1, x3 0.15 lsr x1, x1, #32 0.14 cmp w1, w2 ↓ b.cs 3b0 6.19 add x0, x0, #0x10 0.12 ubfiz x1, x1, #2, #32 0.14 add x0, x0, x1 0.14 ldr w23, [x0] 10.21 ldr x20, [x20, #16] 0.44 mov w24, wzr 0.27 sub w23, w23, #0x1 0.29 ldr w25, [x20, #8] 0.44 cmp w25, w23 ↓ b.ls 1e8 3.36 dc: mov w0, #0x28 // #40 0.26 mov x1, #0x10 // #16 umaddl x0, w23, w0, x1 0.15 add x26, x20, x0 0.44 ldr w0, [x26, #8] 23.85 cmp w0, w22 ↓ b.ne 1cc 1.03 add x0, x26, #0x10 0.59 ldr w23, [x0] 0.58 ldp x25, x0, [x0, #8] 0.99 ldr w27, [x19] 0.29 ldp x28, x1, [x19, #8] ↓ cbnz x25, 25c 0.29 ↓ cbnz x28, 1cc cmp x0, x1 ↓ b.ne 174 0.41 mov w25, #0x1 // #1 0.44 120: ↓ cbz w25, 1cc 0.15 cmp w23, w27 ↓ b.ne 1cc 0.15 12c: ldr x15, [x26] 0.13 mov x14, x21 bl fffffffffe6a6ad0 0.29 mov w0, #0x1 // #1 ldp x27, x28, [sp, #128] ldp x25, x26, [sp, #112] ldp x23, x24, [sp, #96] 0.15 ldp x21, x22, [sp, #80] ldp x19, x20, [sp, #64] 0.29 ldp x29, x30, [sp], #144 0.43 ← ret 158: mov x0, x24 mov x1, #0xc900 // #51456 movk x1, #0xc9c2, lsl #16 movk x1, #0xe74d, lsl #32 ldr x1, [x1] → blr x1 ↑ b 78 174: ↓ cbz x0, 1c4 ↓ cbz x1, 1c4 ldr x2, [x0] mov x3, #0xa320 // #41760 movk x3, #0xc805, lsl #16 movk x3, #0xe74d, lsl #32 cmp x2, x3 ↓ b.eq 1c4 ldr x2, [x1] mov x3, #0xa320 // #41760 movk x3, #0xc805, lsl #16 movk x3, #0xe74d, lsl #32 cmp x2, x3 ↓ b.eq 1c4 ldr x2, [x0] ldr x2, [x2, #168] ldr x2, [x2, #40] → blr x2 mov w25, w0 ↑ b 120 1c4: mov w25, wzr ↑ b 120 0.74 1cc: ldr w23, [x26, #12] 0.87 add w24, w24, #0x1 ldr w25, [x20, #8] 0.15 cmp w25, w24 ↓ b.cc 298 cmp w25, w23 ↑ b.hi dc 0.86 1e8: str xzr, [x21] 0.45 mov w0, wzr ldp x27, x28, [sp, #128] 0.14 ldp x25, x26, [sp, #112] 0.15 ldp x23, x24, [sp, #96] 0.44 ldp x21, x22, [sp, #80] 0.15 ldp x19, x20, [sp, #64] ldp x29, x30, [sp], #144 0.14 ← ret 20c: mov x0, x24 ldr x1, [x24] ldr x1, [x1, #64] ldr x1, [x1, #24] → blr x1 ↑ b 78 224: mov x0, x24 ldr x1, [x24] ldr x1, [x1, #64] ldr x1, [x1, #24] → blr x1 mov w1, #0x18d // #397 mul w24, w0, w1 mov x0, x23 ldr x1, [x23] ldr x1, [x1, #64] ldr x1, [x1, #24] → blr x1 eor w0, w24, w0 ↑ b 78 25c: ↑ cbz x28, 1cc mov x2, #0x5740 // #22336 movk x2, #0xc9b2, lsl #16 movk x2, #0xe74d, lsl #32 ldr x2, [x2] → blr x2 ↑ cbz w0, 1cc mov x0, x25 mov x1, x28 ldr x2, [x25] ldr x2, [x2, #64] ldr x2, [x2, #16] → blr x2 mov w25, w0 ↑ b 120 298: mov x0, #0xcb88 // #52104 movk x0, #0xca74, lsl #16 movk x0, #0xe74d, lsl #32 ldr x0, [x0] → blr x0 brk #0xf000 2b0: ldp x0, x1, [x19] stp x0, x1, [x29, #40] ldr x0, [x19, #16] str x0, [x29, #56] add x1, x29, #0x28 mov x0, x22 mov x11, #0x3140 // #12608 movk x11, #0xd0d5, lsl #16 movk x11, #0xe74d, lsl #32 ldr x16, [x11] → blr x16 mov w23, w0 ldr x2, [x20, #8] ldr x1, [x20, #48] mov w0, w23 mul x1, x1, x0 lsr x1, x1, #32 add x1, x1, #0x1 ldr w0, [x2, #8] mul x1, x1, x0 lsr x1, x1, #32 ldr w0, [x2, #8] cmp w1, w0 ↓ b.cs 3b0 add x2, x2, #0x10 ubfiz x1, x1, #2, #32 add x2, x2, x1 ldr w24, [x2] ldr x20, [x20, #16] mov w25, wzr sub w24, w24, #0x1 32c: ldr w2, [x20, #8] cmp w2, w24 ↑ b.ls 1e8 mov w2, #0x28 // #40 mov x1, #0x10 // #16 umaddl x2, w24, w2, x1 add x26, x20, x2 ldr w2, [x26, #8] cmp w2, w23 ↓ b.ne 398 ldp x0, x1, [x26, #16] stp x0, x1, [x29, #40] ldr x0, [x26, #32] str x0, [x29, #56] ldp x1, x2, [x19] stp x1, x2, [x29, #16] ldr x1, [x19, #16] str x1, [x29, #32] add x2, x29, #0x10 add x1, x29, #0x28 mov x0, x22 mov x11, #0x3148 // #12616 movk x11, #0xd0d5, lsl #16 movk x11, #0xe74d, lsl #32 ldr x16, [x11] → blr x16 ↑ cbnz w0, 12c 398: ldr w24, [x26, #12] add w25, w25, #0x1 ldr w0, [x20, #8] cmp w0, w25 ↑ b.cs 32c ↑ b 298 3b0: bl fffffffff847f5f8 brk #0xf000 Samples: 58K of event 'cycles:P', 857 Hz, Event count (approx.): 174562190128, [percent: local period] bool [System.Text.Json] System.Text.Json.JsonReaderHelper::TryUnescape(valuetype [System.Runtime]System.ReadOnlySpan`1,valuetype [System.Runtime]System.Span`1,int32,int32&)[OptimizedTier1]() /tmp/jitted-41389-177938.so Percent Disassembly of section .text: 0000000000000080 ,valuetype [System.Runtime]System.Span`1,int32,int32&)[OptimizedTier1]>: stp x29, x30, [sp, #-112]! stp x19, x20, [sp, #40] stp x21, x22, [sp, #56] stp x23, x24, [sp, #72] stp x25, x26, [sp, #88] str x27, [sp, #104] mov x29, sp mov x23, x0 mov w21, w1 0.14 mov x24, x2 mov w22, w3 mov w19, w4 mov x20, x5 cmp w19, w21 ↓ b.hi 4e0 0.16 cmp w19, w22 ↓ b.hi 4f8 mov w2, w19 mov x0, x24 mov x1, x23 mov x3, #0x5680 // #22144 movk x3, #0xc93a, lsl #16 movk x3, #0xe74d, lsl #32 ldr x3, [x3] → blr x3 str w19, [x20] ↓ b 154 6c: cmp w0, #0x2f ↓ b.gt 500 cmp w0, #0x22 ↓ b.eq 530 cmp w0, #0x2f ↓ b.eq 590 ↓ b 190 0.82 88: add x0, x0, #0x10 0.34 cmp x0, x3 ↓ b.hi 858 0.16 ldr q17, [x0] 0.81 cmeq v17.16b, v16.16b, v17.16b umaxp v18.4s, v17.4s, v17.4s mov x4, v18.d[0] 0.16 cmp x4, #0x0 ↑ b.eq 88 1.31 ac: movi v16.16b, #0x80 and v17.16b, v17.16b, v16.16b 0.81 ldr q16, bool [System.Text.Json] System.Text.Json.JsonReaderHelper::TryUnescape(valuetype [System.Runtime]System.ReadOnlySpan`1,valuetype [System.Runtime]System.Span`1,int32,int32&)[OptimizedTier1]+0xfffffffff84055f8> brk #0xf000