.build_version macos, 26, 0 sdk_version 26, 5 .section __TEXT,__text,regular,pure_instructions .globl _sdsnewlen ; -- Begin function sdsnewlen .p2align 2 _sdsnewlen: ; @sdsnewlen .cfi_startproc ; %bb.0: stp x24, x23, [sp, #-64]! ; 16-byte Folded Spill stp x22, x21, [sp, #16] ; 16-byte Folded Spill stp x20, x19, [sp, #32] ; 16-byte Folded Spill stp x29, x30, [sp, #48] ; 16-byte Folded Spill add x29, sp, #48 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 mov w8, #1 ; =0x1 mov w9, #2 ; =0x2 mov w10, #65535 ; =0xffff mov w11, #-1 ; =0xffffffff cmp x1, x11 mov w11, #3 ; =0x3 cinc w11, w11, hs cmp x1, x10 csel w9, w9, w11, lo cmp x1, #255 csel w8, w8, w9, lo cmp x1, #32 csel w8, wzr, w8, lo tst w8, #0xff ccmp x1, #0, #0, eq csinc w23, w8, wzr, ne Lloh0: adrp x8, l_switch.table.sdsAllocSize@PAGE Lloh1: add x8, x8, l_switch.table.sdsAllocSize@PAGEOFF and x9, x23, #0xff ldr x24, [x8, x9, lsl #3] add x8, x1, x24 add x21, x8, #1 cmp x21, x1 b.ls LBB0_8 ; %bb.1: mov x19, x1 mov x20, x0 Lloh2: adrp x8, _hiredisAllocFns@GOTPAGE Lloh3: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh4: ldr x8, [x8] mov x0, x21 blr x8 cbz x0, LBB0_18 ; %bb.2: cbnz x20, LBB0_4 ; %bb.3: mov x22, x0 mov x1, x21 bl _bzero mov x0, x22 LBB0_4: add x0, x0, x24 and w8, w23, #0xff cmp w8, #1 b.le LBB0_9 ; %bb.5: cmp w8, #2 b.eq LBB0_11 ; %bb.6: cmp w8, #3 b.ne LBB0_12 ; %bb.7: stur w19, [x0, #-9] stur w19, [x0, #-5] b LBB0_14 LBB0_8: mov x0, #0 ; =0x0 b LBB0_18 LBB0_9: cbnz w8, LBB0_13 ; %bb.10: lsl w8, w19, #3 b LBB0_14 LBB0_11: sturh w19, [x0, #-5] sturh w19, [x0, #-3] b LBB0_14 LBB0_12: stur x19, [x0, #-17] stur x19, [x0, #-9] mov w8, #4 ; =0x4 b LBB0_14 LBB0_13: sturb w19, [x0, #-3] sturb w19, [x0, #-2] mov w8, #1 ; =0x1 LBB0_14: sturb w8, [x0, #-1] cbz x20, LBB0_17 ; %bb.15: cbz x19, LBB0_17 ; %bb.16: mov x21, x0 mov x1, x20 mov x2, x19 bl _memcpy mov x0, x21 LBB0_17: strb wzr, [x0, x19] LBB0_18: ldp x29, x30, [sp, #48] ; 16-byte Folded Reload ldp x20, x19, [sp, #32] ; 16-byte Folded Reload ldp x22, x21, [sp, #16] ; 16-byte Folded Reload ldp x24, x23, [sp], #64 ; 16-byte Folded Reload ret .loh AdrpAdd Lloh0, Lloh1 .loh AdrpLdrGotLdr Lloh2, Lloh3, Lloh4 .cfi_endproc ; -- End function .globl _sdsempty ; -- Begin function sdsempty .p2align 2 _sdsempty: ; @sdsempty .cfi_startproc ; %bb.0: stp x29, x30, [sp, #-16]! ; 16-byte Folded Spill mov x29, sp .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 Lloh5: adrp x8, _hiredisAllocFns@GOTPAGE Lloh6: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh7: ldr x8, [x8] mov w0, #4 ; =0x4 blr x8 cbz x0, LBB1_2 ; %bb.1: movi.2s v0, #1, lsl #16 mov w8, #3 ; =0x3 st1.s { v0 }[0], [x0], x8 LBB1_2: ldp x29, x30, [sp], #16 ; 16-byte Folded Reload ret .loh AdrpLdrGotLdr Lloh5, Lloh6, Lloh7 .cfi_endproc ; -- End function .globl _sdsnew ; -- Begin function sdsnew .p2align 2 _sdsnew: ; @sdsnew .cfi_startproc ; %bb.0: cbz x0, LBB2_2 ; %bb.1: stp x20, x19, [sp, #-32]! ; 16-byte Folded Spill stp x29, x30, [sp, #16] ; 16-byte Folded Spill add x29, sp, #16 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 mov x19, x0 bl _strlen mov x1, x0 mov x0, x19 ldp x29, x30, [sp, #16] ; 16-byte Folded Reload ldp x20, x19, [sp], #32 ; 16-byte Folded Reload b _sdsnewlen LBB2_2: mov x1, #0 ; =0x0 b _sdsnewlen .cfi_endproc ; -- End function .globl _sdsdup ; -- Begin function sdsdup .p2align 2 _sdsdup: ; @sdsdup .cfi_startproc ; %bb.0: mov x1, #0 ; =0x0 ldurb w9, [x0, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB3_5 ; %bb.1: cmp w8, #2 b.eq LBB3_8 ; %bb.2: cmp w8, #3 b.eq LBB3_9 ; %bb.3: cmp w8, #4 b.ne LBB3_10 ; %bb.4: ldur x1, [x0, #-17] b _sdsnewlen LBB3_5: cbz w8, LBB3_11 ; %bb.6: cmp w8, #1 b.ne LBB3_10 ; %bb.7: ldurb w1, [x0, #-3] b _sdsnewlen LBB3_8: ldurh w1, [x0, #-5] b _sdsnewlen LBB3_9: ldur w1, [x0, #-9] LBB3_10: b _sdsnewlen LBB3_11: lsr x1, x9, #3 b _sdsnewlen .cfi_endproc ; -- End function .globl _sdsfree ; -- Begin function sdsfree .p2align 2 _sdsfree: ; @sdsfree .cfi_startproc ; %bb.0: cbz x0, LBB4_3 ; %bb.1: ldurb w8, [x0, #-1] and x8, x8, #0x7 cmp w8, #4 b.hi LBB4_4 ; %bb.2: Lloh8: adrp x9, l_switch.table.sdssplitargs.17@PAGE Lloh9: add x9, x9, l_switch.table.sdssplitargs.17@PAGEOFF ldr x8, [x9, x8, lsl #3] b LBB4_5 LBB4_3: ret LBB4_4: mov x8, #0 ; =0x0 LBB4_5: Lloh10: adrp x9, _hiredisAllocFns@GOTPAGE Lloh11: ldr x9, [x9, _hiredisAllocFns@GOTPAGEOFF] Lloh12: ldr x1, [x9, #32] add x0, x0, x8 br x1 .loh AdrpAdd Lloh8, Lloh9 .loh AdrpLdrGotLdr Lloh10, Lloh11, Lloh12 .cfi_endproc ; -- End function .globl _sdsupdatelen ; -- Begin function sdsupdatelen .p2align 2 _sdsupdatelen: ; @sdsupdatelen .cfi_startproc ; %bb.0: stp x20, x19, [sp, #-32]! ; 16-byte Folded Spill stp x29, x30, [sp, #16] ; 16-byte Folded Spill add x29, sp, #16 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 mov x19, x0 bl _strlen ldurb w8, [x19, #-1] and w8, w8, #0x7 cmp w8, #1 b.le LBB5_5 ; %bb.1: cmp w8, #2 b.eq LBB5_8 ; %bb.2: cmp w8, #3 b.eq LBB5_9 ; %bb.3: cmp w8, #4 b.ne LBB5_11 ; %bb.4: stur x0, [x19, #-17] b LBB5_11 LBB5_5: cbz w8, LBB5_10 ; %bb.6: cmp w8, #1 b.ne LBB5_11 ; %bb.7: sturb w0, [x19, #-3] b LBB5_11 LBB5_8: sturh w0, [x19, #-5] b LBB5_11 LBB5_9: stur w0, [x19, #-9] b LBB5_11 LBB5_10: lsl w8, w0, #3 sturb w8, [x19, #-1] LBB5_11: ldp x29, x30, [sp, #16] ; 16-byte Folded Reload ldp x20, x19, [sp], #32 ; 16-byte Folded Reload ret .cfi_endproc ; -- End function .globl _sdsclear ; -- Begin function sdsclear .p2align 2 _sdsclear: ; @sdsclear .cfi_startproc ; %bb.0: ldurb w8, [x0, #-1] and w8, w8, #0x7 cmp w8, #1 b.le LBB6_5 ; %bb.1: cmp w8, #2 b.eq LBB6_8 ; %bb.2: cmp w8, #3 b.eq LBB6_9 ; %bb.3: cmp w8, #4 b.ne LBB6_10 ; %bb.4: stur xzr, [x0, #-17] strb wzr, [x0] ret LBB6_5: cbz w8, LBB6_11 ; %bb.6: cmp w8, #1 b.ne LBB6_10 ; %bb.7: sturb wzr, [x0, #-3] strb wzr, [x0] ret LBB6_8: sturh wzr, [x0, #-5] strb wzr, [x0] ret LBB6_9: stur wzr, [x0, #-9] LBB6_10: strb wzr, [x0] ret LBB6_11: sturh wzr, [x0, #-1] ret .cfi_endproc ; -- End function .globl _sdsMakeRoomFor ; -- Begin function sdsMakeRoomFor .p2align 2 _sdsMakeRoomFor: ; @sdsMakeRoomFor .cfi_startproc ; %bb.0: mov x10, #0 ; =0x0 ldurb w9, [x0, #-1] and x8, x9, #0x7 cmp w8, #2 b.gt LBB7_4 ; %bb.1: cmp w8, #1 b.eq LBB7_9 ; %bb.2: cmp w8, #2 b.ne LBB7_10 ; %bb.3: ldurh w10, [x0, #-3] ldurh w11, [x0, #-5] b LBB7_7 LBB7_4: cmp w8, #3 b.eq LBB7_19 ; %bb.5: cmp w8, #4 b.ne LBB7_10 ; %bb.6: ldur x10, [x0, #-9] ldur x11, [x0, #-17] LBB7_7: sub x10, x10, x11 cmp x10, x1 b.lo LBB7_11 LBB7_8: ret LBB7_9: ldurb w10, [x0, #-2] ldurb w11, [x0, #-3] sub x10, x10, x11 LBB7_10: cmp x10, x1 b.hs LBB7_8 LBB7_11: stp x26, x25, [sp, #-80]! ; 16-byte Folded Spill stp x24, x23, [sp, #16] ; 16-byte Folded Spill stp x22, x21, [sp, #32] ; 16-byte Folded Spill stp x20, x19, [sp, #48] ; 16-byte Folded Spill stp x29, x30, [sp, #64] ; 16-byte Folded Spill add x29, sp, #64 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 .cfi_offset w25, -72 .cfi_offset w26, -80 mov x21, #0 ; =0x0 and w10, w9, #0x7 cmp w10, #1 b.le LBB7_16 ; %bb.12: cmp w10, #2 b.eq LBB7_20 ; %bb.13: cmp w10, #3 b.eq LBB7_22 ; %bb.14: cmp w10, #4 b.ne LBB7_23 ; %bb.15: ldur x21, [x0, #-17] cmp w8, #4 b.ls LBB7_24 b LBB7_21 LBB7_16: cbz w10, LBB7_34 ; %bb.17: cmp w10, #1 b.ne LBB7_23 ; %bb.18: ldurb w21, [x0, #-3] cmp w8, #4 b.ls LBB7_24 b LBB7_21 LBB7_19: ldur w10, [x0, #-5] ldur w11, [x0, #-9] sub w10, w10, w11 cmp x10, x1 b.lo LBB7_11 b LBB7_8 LBB7_20: ldurh w21, [x0, #-5] cmp w8, #4 b.ls LBB7_24 LBB7_21: mov x23, #0 ; =0x0 b LBB7_25 LBB7_22: ldur w21, [x0, #-9] LBB7_23: cmp w8, #4 b.hi LBB7_21 LBB7_24: Lloh13: adrp x9, l_switch.table.sdssplitargs.17@PAGE Lloh14: add x9, x9, l_switch.table.sdssplitargs.17@PAGEOFF ldr x23, [x9, x8, lsl #3] LBB7_25: add x9, x21, x1 cmp x9, x21 b.ls LBB7_32 ; %bb.26: lsl x10, x9, #1 add x11, x9, #256, lsl #12 ; =1048576 cmp x9, #256, lsl #12 ; =1048576 csel x22, x10, x11, lo mov w10, #1 ; =0x1 mov w11, #2 ; =0x2 mov w12, #65535 ; =0xffff mov w13, #-1 ; =0xffffffff cmp x22, x13 mov w13, #3 ; =0x3 cinc w13, w13, hs cmp x22, x12 csel w11, w11, w13, lo cmp x22, #255 csel w10, w10, w11, lo cmp x22, #32 csel w10, wzr, w10, lo and w11, w10, #0xff tst w10, #0xfe csinc w24, w11, wzr, ne sub w10, w24, #1 Lloh15: adrp x11, l_switch.table.sdsMakeRoomFor.16@PAGE Lloh16: add x11, x11, l_switch.table.sdsMakeRoomFor.16@PAGEOFF and x10, x10, #0xff ldr x19, [x11, x10, lsl #3] add x10, x22, x19 add x1, x10, #1 cmp x1, x9 b.ls LBB7_32 ; %bb.27: cmp w8, w24 b.ne LBB7_35 ; %bb.28: Lloh17: adrp x8, _hiredisAllocFns@GOTPAGE Lloh18: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh19: ldr x8, [x8, #16] add x0, x0, x23 blr x8 cbz x0, LBB7_33 ; %bb.29: add x0, x0, x19 ldurb w8, [x0, #-1] and w8, w8, #0x7 cmp w8, #2 b.gt LBB7_40 ; %bb.30: cmp w8, #1 b.eq LBB7_39 ; %bb.31: cmp w8, #2 b.eq LBB7_46 b LBB7_33 LBB7_32: mov x0, #0 ; =0x0 LBB7_33: ldp x29, x30, [sp, #64] ; 16-byte Folded Reload ldp x20, x19, [sp, #48] ; 16-byte Folded Reload ldp x22, x21, [sp, #32] ; 16-byte Folded Reload ldp x24, x23, [sp, #16] ; 16-byte Folded Reload ldp x26, x25, [sp], #80 ; 16-byte Folded Reload ret LBB7_34: lsr x21, x9, #3 cmp w8, #4 b.ls LBB7_24 b LBB7_21 LBB7_35: mov x20, x0 Lloh20: adrp x25, _hiredisAllocFns@GOTPAGE Lloh21: ldr x25, [x25, _hiredisAllocFns@GOTPAGEOFF] ldr x8, [x25] mov x0, x1 blr x8 cbz x0, LBB7_33 ; %bb.36: add x19, x0, x19 add x2, x21, #1 mov x0, x19 mov x1, x20 bl _memcpy ldr x8, [x25, #32] add x0, x20, x23 blr x8 mov x0, x19 sturb w24, [x19, #-1] cmp w24, #2 b.gt LBB7_42 ; %bb.37: cmp w24, #1 b.ne LBB7_45 ; %bb.38: sturb w21, [x0, #-3] LBB7_39: sturb w22, [x0, #-2] b LBB7_33 LBB7_40: cmp w8, #3 b.eq LBB7_44 ; %bb.41: cmp w8, #4 b.eq LBB7_48 b LBB7_33 LBB7_42: cmp w24, #3 b.ne LBB7_47 ; %bb.43: stur w21, [x0, #-9] LBB7_44: stur w22, [x0, #-5] b LBB7_33 LBB7_45: sturh w21, [x0, #-5] LBB7_46: sturh w22, [x0, #-3] b LBB7_33 LBB7_47: stur x21, [x0, #-17] LBB7_48: stur x22, [x0, #-9] b LBB7_33 .loh AdrpAdd Lloh13, Lloh14 .loh AdrpAdd Lloh15, Lloh16 .loh AdrpLdrGotLdr Lloh17, Lloh18, Lloh19 .loh AdrpLdrGot Lloh20, Lloh21 .cfi_endproc ; -- End function .globl _sdsRemoveFreeSpace ; -- Begin function sdsRemoveFreeSpace .p2align 2 _sdsRemoveFreeSpace: ; @sdsRemoveFreeSpace .cfi_startproc ; %bb.0: stp x26, x25, [sp, #-80]! ; 16-byte Folded Spill stp x24, x23, [sp, #16] ; 16-byte Folded Spill stp x22, x21, [sp, #32] ; 16-byte Folded Spill stp x20, x19, [sp, #48] ; 16-byte Folded Spill stp x29, x30, [sp, #64] ; 16-byte Folded Spill add x29, sp, #64 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 .cfi_offset w25, -72 .cfi_offset w26, -80 mov x19, x0 mov x22, #0 ; =0x0 ldurb w10, [x0, #-1] and x8, x10, #0x7 and w9, w10, #0x7 cmp w9, #1 b.le LBB8_5 ; %bb.1: cmp w9, #2 b.eq LBB8_8 ; %bb.2: cmp w9, #3 b.eq LBB8_9 ; %bb.3: cmp w9, #4 b.ne LBB8_10 ; %bb.4: ldur x22, [x19, #-17] cmp w8, #4 b.ls LBB8_11 b LBB8_13 LBB8_5: cbz w9, LBB8_12 ; %bb.6: cmp w9, #1 b.ne LBB8_10 ; %bb.7: ldurb w22, [x19, #-3] cmp w8, #4 b.ls LBB8_11 b LBB8_13 LBB8_8: ldurh w22, [x19, #-5] cmp w8, #4 b.ls LBB8_11 b LBB8_13 LBB8_9: ldur w22, [x19, #-9] LBB8_10: cmp w8, #4 b.hi LBB8_13 LBB8_11: Lloh22: adrp x9, l_switch.table.sdssplitargs.17@PAGE Lloh23: add x9, x9, l_switch.table.sdssplitargs.17@PAGEOFF ldr x23, [x9, x8, lsl #3] b LBB8_14 LBB8_12: lsr x22, x10, #3 cmp w8, #4 b.ls LBB8_11 LBB8_13: mov x23, #0 ; =0x0 LBB8_14: mov w9, #1 ; =0x1 mov w10, #1 ; =0x1 mov w11, #3 ; =0x3 mov w12, #2 ; =0x2 mov w13, #5 ; =0x5 mov w14, #65535 ; =0xffff mov w15, #-1 ; =0xffffffff mov w16, #17 ; =0x11 mov w17, #9 ; =0x9 cmp x22, x15 csel x15, x17, x16, lo cinc w16, w11, hs cmp x22, x14 csel x13, x13, x15, lo csel w12, w12, w16, lo cmp x22, #255 csel x11, x11, x13, lo csel w10, w10, w12, lo cmp x22, #32 csel x21, x9, x11, lo csel w24, wzr, w10, lo add x20, x22, #1 cmp w8, w24, uxtb b.ne LBB8_20 ; %bb.15: Lloh24: adrp x8, _hiredisAllocFns@GOTPAGE Lloh25: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh26: ldr x8, [x8, #16] add x0, x19, x23 add x1, x20, x21 blr x8 cbz x0, LBB8_36 ; %bb.16: add x0, x0, x21 ldurb w8, [x0, #-1] LBB8_17: and w8, w8, #0x7 cmp w8, #2 b.gt LBB8_25 ; %bb.18: cmp w8, #1 b.eq LBB8_35 ; %bb.19: cmp w8, #2 b.eq LBB8_31 b LBB8_36 LBB8_20: Lloh27: adrp x25, _hiredisAllocFns@GOTPAGE Lloh28: ldr x25, [x25, _hiredisAllocFns@GOTPAGEOFF] ldr x8, [x25] add x0, x20, x21 blr x8 cbz x0, LBB8_36 ; %bb.21: add x21, x0, x21 mov x0, x21 mov x1, x19 mov x2, x20 bl _memcpy ldr x8, [x25, #32] add x0, x19, x23 blr x8 mov x0, x21 sturb w24, [x21, #-1] and w8, w24, #0xff cmp w8, #1 b.le LBB8_28 ; %bb.22: cmp w8, #2 b.eq LBB8_30 ; %bb.23: cmp w8, #3 b.ne LBB8_32 ; %bb.24: stur w22, [x0, #-9] b LBB8_27 LBB8_25: cmp w8, #3 b.eq LBB8_27 ; %bb.26: cmp w8, #4 b.eq LBB8_33 b LBB8_36 LBB8_27: stur w22, [x0, #-5] b LBB8_36 LBB8_28: cbnz w8, LBB8_34 ; %bb.29: lsl w8, w22, #3 sturb w8, [x0, #-1] b LBB8_17 LBB8_30: sturh w22, [x0, #-5] LBB8_31: sturh w22, [x0, #-3] b LBB8_36 LBB8_32: stur x22, [x0, #-17] LBB8_33: stur x22, [x0, #-9] b LBB8_36 LBB8_34: sturb w22, [x0, #-3] LBB8_35: sturb w22, [x0, #-2] LBB8_36: ldp x29, x30, [sp, #64] ; 16-byte Folded Reload ldp x20, x19, [sp, #48] ; 16-byte Folded Reload ldp x22, x21, [sp, #32] ; 16-byte Folded Reload ldp x24, x23, [sp, #16] ; 16-byte Folded Reload ldp x26, x25, [sp], #80 ; 16-byte Folded Reload ret .loh AdrpAdd Lloh22, Lloh23 .loh AdrpLdrGotLdr Lloh24, Lloh25, Lloh26 .loh AdrpLdrGot Lloh27, Lloh28 .cfi_endproc ; -- End function .globl _sdsAllocSize ; -- Begin function sdsAllocSize .p2align 2 _sdsAllocSize: ; @sdsAllocSize .cfi_startproc ; %bb.0: mov x8, #0 ; =0x0 ldurb w9, [x0, #-1] and w10, w9, #0x7 cmp w10, #1 b.le LBB9_5 ; %bb.1: cmp w10, #2 b.eq LBB9_8 ; %bb.2: cmp w10, #3 b.eq LBB9_9 ; %bb.3: cmp w10, #4 b.ne LBB9_11 ; %bb.4: ldur x8, [x0, #-9] b LBB9_11 LBB9_5: cbz w10, LBB9_10 ; %bb.6: cmp w10, #1 b.ne LBB9_11 ; %bb.7: ldurb w8, [x0, #-2] b LBB9_11 LBB9_8: ldurh w8, [x0, #-3] b LBB9_11 LBB9_9: ldur w8, [x0, #-5] b LBB9_11 LBB9_10: lsr x8, x9, #3 LBB9_11: and x9, x9, #0x7 cmp w9, #4 b.hi LBB9_13 ; %bb.12: Lloh29: adrp x10, l_switch.table.sdsAllocSize@PAGE Lloh30: add x10, x10, l_switch.table.sdsAllocSize@PAGEOFF ldr x9, [x10, x9, lsl #3] b LBB9_14 LBB9_13: mov x9, #0 ; =0x0 LBB9_14: add x8, x8, x9 add x0, x8, #1 ret .loh AdrpAdd Lloh29, Lloh30 .cfi_endproc ; -- End function .globl _sdsAllocPtr ; -- Begin function sdsAllocPtr .p2align 2 _sdsAllocPtr: ; @sdsAllocPtr .cfi_startproc ; %bb.0: ldurb w8, [x0, #-1] and x8, x8, #0x7 cmp w8, #4 b.hi LBB10_2 ; %bb.1: Lloh31: adrp x9, l_switch.table.sdssplitargs.17@PAGE Lloh32: add x9, x9, l_switch.table.sdssplitargs.17@PAGEOFF ldr x8, [x9, x8, lsl #3] add x0, x0, x8 ret LBB10_2: add x0, x0, xzr ret .loh AdrpAdd Lloh31, Lloh32 .cfi_endproc ; -- End function .globl _sdsIncrLen ; -- Begin function sdsIncrLen .p2align 2 _sdsIncrLen: ; @sdsIncrLen .cfi_startproc ; %bb.0: stp x29, x30, [sp, #-16]! ; 16-byte Folded Spill mov x29, sp .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 mov x8, #0 ; =0x0 ldurb w10, [x0, #-1] and w9, w10, #0x7 cmp w9, #1 b.le LBB11_7 ; %bb.1: cmp w9, #2 b.eq LBB11_12 ; %bb.2: cmp w9, #3 b.eq LBB11_15 ; %bb.3: cmp w9, #4 b.ne LBB11_29 ; %bb.4: tbnz w1, #31, LBB11_30 ; %bb.5: ldur x9, [x0, #-9] ldur x8, [x0, #-17] sub x9, x9, x8 cmp x9, w1, uxtw b.lo LBB11_31 LBB11_6: add x8, x8, w1, sxtw stur x8, [x0, #-17] b LBB11_29 LBB11_7: cbz w9, LBB11_18 ; %bb.8: cmp w9, #1 b.ne LBB11_29 ; %bb.9: tbnz w1, #31, LBB11_32 ; %bb.10: ldurb w9, [x0, #-2] ldurb w8, [x0, #-3] sub w9, w9, w8 cmp w9, w1 b.lt LBB11_33 LBB11_11: add w8, w8, w1 sturb w8, [x0, #-3] and x8, x8, #0xff b LBB11_29 LBB11_12: tbnz w1, #31, LBB11_21 ; %bb.13: ldurh w9, [x0, #-3] ldurh w8, [x0, #-5] sub w9, w9, w8 cmp w9, w1 b.lt LBB11_22 LBB11_14: add w8, w8, w1 sturh w8, [x0, #-5] and x8, x8, #0xffff b LBB11_29 LBB11_15: tbnz w1, #31, LBB11_23 ; %bb.16: ldur w9, [x0, #-5] ldur w8, [x0, #-9] sub w9, w9, w8 cmp w9, w1 b.lo LBB11_24 LBB11_17: add w8, w8, w1 stur w8, [x0, #-9] b LBB11_29 LBB11_18: lsr w8, w10, #3 cmp w1, #1 b.lt LBB11_25 ; %bb.19: add w8, w1, w8 cmp w8, #32 b.lo LBB11_28 LBB11_20: bl _sdsIncrLen.cold.5 LBB11_21: ldurh w8, [x0, #-5] neg w9, w1 cmp w8, w9 b.hs LBB11_14 LBB11_22: bl _sdsIncrLen.cold.3 LBB11_23: ldur w8, [x0, #-9] neg w9, w1 cmp w8, w9 b.hs LBB11_17 LBB11_24: bl _sdsIncrLen.cold.2 LBB11_25: cbz w1, LBB11_20 ; %bb.26: neg w9, w1 cmp w8, w9 b.lo LBB11_20 ; %bb.27: add w8, w1, w8 LBB11_28: lsl w9, w8, #3 sturb w9, [x0, #-1] sxtw x8, w8 LBB11_29: strb wzr, [x0, x8] ldp x29, x30, [sp], #16 ; 16-byte Folded Reload ret LBB11_30: ldur x8, [x0, #-17] neg w9, w1 cmp x8, x9 b.hs LBB11_6 LBB11_31: bl _sdsIncrLen.cold.1 LBB11_32: ldurb w8, [x0, #-3] neg w9, w1 cmp w8, w9 b.hs LBB11_11 LBB11_33: bl _sdsIncrLen.cold.4 .cfi_endproc ; -- End function .globl _sdsgrowzero ; -- Begin function sdsgrowzero .p2align 2 _sdsgrowzero: ; @sdsgrowzero .cfi_startproc ; %bb.0: stp x22, x21, [sp, #-48]! ; 16-byte Folded Spill stp x20, x19, [sp, #16] ; 16-byte Folded Spill stp x29, x30, [sp, #32] ; 16-byte Folded Spill add x29, sp, #32 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 mov x19, x1 mov x21, #0 ; =0x0 ldurb w9, [x0, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB12_5 ; %bb.1: cmp w8, #2 b.eq LBB12_8 ; %bb.2: cmp w8, #3 b.eq LBB12_9 ; %bb.3: cmp w8, #4 b.ne LBB12_10 ; %bb.4: ldur x21, [x0, #-17] subs x20, x19, x21 b.hi LBB12_11 b LBB12_24 LBB12_5: cbz w8, LBB12_17 ; %bb.6: cmp w8, #1 b.ne LBB12_10 ; %bb.7: ldurb w21, [x0, #-3] subs x20, x19, x21 b.hi LBB12_11 b LBB12_24 LBB12_8: ldurh w21, [x0, #-5] subs x20, x19, x21 b.hi LBB12_11 b LBB12_24 LBB12_9: ldur w21, [x0, #-9] LBB12_10: subs x20, x19, x21 b.ls LBB12_24 LBB12_11: mov x1, x20 bl _sdsMakeRoomFor cbz x0, LBB12_24 ; %bb.12: mov x22, x0 add x0, x0, x21 add x1, x20, #1 bl _bzero mov x0, x22 ldurb w8, [x22, #-1] and w8, w8, #0x7 cmp w8, #1 b.le LBB12_18 ; %bb.13: cmp w8, #2 b.eq LBB12_21 ; %bb.14: cmp w8, #3 b.eq LBB12_22 ; %bb.15: cmp w8, #4 b.ne LBB12_24 ; %bb.16: stur x19, [x0, #-17] b LBB12_24 LBB12_17: lsr x21, x9, #3 subs x20, x19, x21 b.hi LBB12_11 b LBB12_24 LBB12_18: cbz w8, LBB12_23 ; %bb.19: cmp w8, #1 b.ne LBB12_24 ; %bb.20: sturb w19, [x0, #-3] b LBB12_24 LBB12_21: sturh w19, [x0, #-5] b LBB12_24 LBB12_22: stur w19, [x0, #-9] b LBB12_24 LBB12_23: lsl w8, w19, #3 sturb w8, [x0, #-1] LBB12_24: ldp x29, x30, [sp, #32] ; 16-byte Folded Reload ldp x20, x19, [sp, #16] ; 16-byte Folded Reload ldp x22, x21, [sp], #48 ; 16-byte Folded Reload ret .cfi_endproc ; -- End function .globl _sdscatlen ; -- Begin function sdscatlen .p2align 2 _sdscatlen: ; @sdscatlen .cfi_startproc ; %bb.0: stp x22, x21, [sp, #-48]! ; 16-byte Folded Spill stp x20, x19, [sp, #16] ; 16-byte Folded Spill stp x29, x30, [sp, #32] ; 16-byte Folded Spill add x29, sp, #32 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 mov x19, x2 mov x20, x1 mov x21, #0 ; =0x0 ldurb w9, [x0, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB13_5 ; %bb.1: cmp w8, #2 b.eq LBB13_8 ; %bb.2: cmp w8, #3 b.eq LBB13_9 ; %bb.3: cmp w8, #4 b.ne LBB13_11 ; %bb.4: ldur x21, [x0, #-17] b LBB13_11 LBB13_5: cbz w8, LBB13_10 ; %bb.6: cmp w8, #1 b.ne LBB13_11 ; %bb.7: ldurb w21, [x0, #-3] b LBB13_11 LBB13_8: ldurh w21, [x0, #-5] b LBB13_11 LBB13_9: ldur w21, [x0, #-9] b LBB13_11 LBB13_10: lsr x21, x9, #3 LBB13_11: mov x1, x19 bl _sdsMakeRoomFor cbz x0, LBB13_24 ; %bb.12: mov x22, x0 add x0, x0, x21 mov x1, x20 mov x2, x19 bl _memcpy mov x0, x22 add x8, x21, x19 ldurb w9, [x22, #-1] and w9, w9, #0x7 cmp w9, #1 b.le LBB13_17 ; %bb.13: cmp w9, #2 b.eq LBB13_20 ; %bb.14: cmp w9, #3 b.eq LBB13_21 ; %bb.15: cmp w9, #4 b.ne LBB13_23 ; %bb.16: stur x8, [x0, #-17] b LBB13_23 LBB13_17: cbz w9, LBB13_22 ; %bb.18: cmp w9, #1 b.ne LBB13_23 ; %bb.19: sturb w8, [x0, #-3] b LBB13_23 LBB13_20: sturh w8, [x0, #-5] b LBB13_23 LBB13_21: stur w8, [x0, #-9] b LBB13_23 LBB13_22: lsl w9, w8, #3 sturb w9, [x0, #-1] LBB13_23: strb wzr, [x0, x8] LBB13_24: ldp x29, x30, [sp, #32] ; 16-byte Folded Reload ldp x20, x19, [sp, #16] ; 16-byte Folded Reload ldp x22, x21, [sp], #48 ; 16-byte Folded Reload ret .cfi_endproc ; -- End function .globl _sdscat ; -- Begin function sdscat .p2align 2 _sdscat: ; @sdscat .cfi_startproc ; %bb.0: stp x20, x19, [sp, #-32]! ; 16-byte Folded Spill stp x29, x30, [sp, #16] ; 16-byte Folded Spill add x29, sp, #16 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 mov x19, x1 mov x20, x0 mov x0, x1 bl _strlen mov x2, x0 mov x0, x20 mov x1, x19 ldp x29, x30, [sp, #16] ; 16-byte Folded Reload ldp x20, x19, [sp], #32 ; 16-byte Folded Reload b _sdscatlen .cfi_endproc ; -- End function .globl _sdscatsds ; -- Begin function sdscatsds .p2align 2 _sdscatsds: ; @sdscatsds .cfi_startproc ; %bb.0: mov x2, #0 ; =0x0 ldurb w9, [x1, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB15_5 ; %bb.1: cmp w8, #2 b.eq LBB15_8 ; %bb.2: cmp w8, #3 b.eq LBB15_9 ; %bb.3: cmp w8, #4 b.ne LBB15_10 ; %bb.4: ldur x2, [x1, #-17] b _sdscatlen LBB15_5: cbz w8, LBB15_11 ; %bb.6: cmp w8, #1 b.ne LBB15_10 ; %bb.7: ldurb w2, [x1, #-3] b _sdscatlen LBB15_8: ldurh w2, [x1, #-5] b _sdscatlen LBB15_9: ldur w2, [x1, #-9] LBB15_10: b _sdscatlen LBB15_11: lsr x2, x9, #3 b _sdscatlen .cfi_endproc ; -- End function .globl _sdscpylen ; -- Begin function sdscpylen .p2align 2 _sdscpylen: ; @sdscpylen .cfi_startproc ; %bb.0: stp x20, x19, [sp, #-32]! ; 16-byte Folded Spill stp x29, x30, [sp, #16] ; 16-byte Folded Spill add x29, sp, #16 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 mov x19, x2 mov x10, #0 ; =0x0 ldurb w9, [x0, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB16_5 ; %bb.1: cmp w8, #2 b.eq LBB16_8 ; %bb.2: cmp w8, #3 b.eq LBB16_9 ; %bb.3: cmp w8, #4 b.ne LBB16_10 ; %bb.4: ldur x10, [x0, #-9] cmp x10, x19 b.lo LBB16_11 b LBB16_24 LBB16_5: cbz w8, LBB16_19 ; %bb.6: cmp w8, #1 b.ne LBB16_10 ; %bb.7: ldurb w10, [x0, #-2] cmp x10, x19 b.lo LBB16_11 b LBB16_24 LBB16_8: ldurh w10, [x0, #-3] cmp x10, x19 b.lo LBB16_11 b LBB16_24 LBB16_9: ldur w10, [x0, #-5] LBB16_10: cmp x10, x19 b.hs LBB16_24 LBB16_11: mov x10, #0 ; =0x0 mov x20, x1 cmp w8, #1 b.le LBB16_16 ; %bb.12: cmp w8, #2 b.eq LBB16_20 ; %bb.13: cmp w8, #3 b.eq LBB16_21 ; %bb.14: cmp w8, #4 b.ne LBB16_23 ; %bb.15: ldur x10, [x0, #-17] b LBB16_23 LBB16_16: cbz w8, LBB16_22 ; %bb.17: cmp w8, #1 b.ne LBB16_23 ; %bb.18: ldurb w10, [x0, #-3] b LBB16_23 LBB16_19: lsr x10, x9, #3 cmp x10, x19 b.lo LBB16_11 b LBB16_24 LBB16_20: ldurh w10, [x0, #-5] b LBB16_23 LBB16_21: ldur w10, [x0, #-9] b LBB16_23 LBB16_22: lsr x10, x9, #3 LBB16_23: sub x1, x19, x10 bl _sdsMakeRoomFor mov x1, x20 cbz x0, LBB16_35 LBB16_24: mov x20, x0 mov x2, x19 bl _memcpy mov x0, x20 strb wzr, [x20, x19] ldurb w8, [x20, #-1] and w8, w8, #0x7 cmp w8, #1 b.le LBB16_29 ; %bb.25: cmp w8, #2 b.eq LBB16_32 ; %bb.26: cmp w8, #3 b.eq LBB16_33 ; %bb.27: cmp w8, #4 b.ne LBB16_35 ; %bb.28: stur x19, [x0, #-17] b LBB16_35 LBB16_29: cbz w8, LBB16_34 ; %bb.30: cmp w8, #1 b.ne LBB16_35 ; %bb.31: sturb w19, [x0, #-3] b LBB16_35 LBB16_32: sturh w19, [x0, #-5] b LBB16_35 LBB16_33: stur w19, [x0, #-9] b LBB16_35 LBB16_34: lsl w8, w19, #3 sturb w8, [x0, #-1] LBB16_35: ldp x29, x30, [sp, #16] ; 16-byte Folded Reload ldp x20, x19, [sp], #32 ; 16-byte Folded Reload ret .cfi_endproc ; -- End function .globl _sdscpy ; -- Begin function sdscpy .p2align 2 _sdscpy: ; @sdscpy .cfi_startproc ; %bb.0: stp x20, x19, [sp, #-32]! ; 16-byte Folded Spill stp x29, x30, [sp, #16] ; 16-byte Folded Spill add x29, sp, #16 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 mov x19, x1 mov x20, x0 mov x0, x1 bl _strlen mov x2, x0 mov x0, x20 mov x1, x19 ldp x29, x30, [sp, #16] ; 16-byte Folded Reload ldp x20, x19, [sp], #32 ; 16-byte Folded Reload b _sdscpylen .cfi_endproc ; -- End function .globl _sdsll2str ; -- Begin function sdsll2str .p2align 2 _sdsll2str: ; @sdsll2str .cfi_startproc ; %bb.0: cmp x1, #0 cneg x10, x1, mi mov x9, #-3689348814741910324 ; =0xcccccccccccccccc movk x9, #52429 mov w11, #10 ; =0xa mov x8, x0 LBB18_1: ; =>This Inner Loop Header: Depth=1 umulh x12, x10, x9 lsr x12, x12, #3 msub w13, w12, w11, w10 orr w13, w13, #0x30 strb w13, [x8], #1 cmp x10, #9 mov x10, x12 b.hi LBB18_1 ; %bb.2: tbz x1, #63, LBB18_4 ; %bb.3: mov w9, #45 ; =0x2d strb w9, [x8], #1 LBB18_4: mov x9, x8 strb wzr, [x9], #-1 cmp x0, x9 b.hs LBB18_7 ; %bb.5: add x10, x0, #1 LBB18_6: ; =>This Inner Loop Header: Depth=1 ldurb w11, [x10, #-1] ldrb w12, [x9] sturb w12, [x10, #-1] strb w11, [x9], #-1 cmp x10, x9 add x10, x10, #1 b.lo LBB18_6 LBB18_7: sub w0, w8, w0 ret .cfi_endproc ; -- End function .globl _sdsull2str ; -- Begin function sdsull2str .p2align 2 _sdsull2str: ; @sdsull2str .cfi_startproc ; %bb.0: mov x8, x0 mov w0, #0 ; =0x0 sub x9, x8, #1 mov x10, #-3689348814741910324 ; =0xcccccccccccccccc movk x10, #52429 mov w11, #10 ; =0xa LBB19_1: ; =>This Inner Loop Header: Depth=1 umulh x12, x1, x10 lsr x12, x12, #3 msub w13, w12, w11, w1 orr w13, w13, #0x30 strb w13, [x9, #1]! add w0, w0, #1 cmp x1, #9 mov x1, x12 b.hi LBB19_1 ; %bb.2: strb wzr, [x9, #1] cmp x8, x9 b.hs LBB19_5 ; %bb.3: sub x9, x9, #1 LBB19_4: ; =>This Inner Loop Header: Depth=1 ldrb w10, [x8] ldrb w11, [x9, #1] strb w11, [x8], #1 strb w10, [x9, #1] cmp x8, x9 sub x9, x9, #1 b.lo LBB19_4 LBB19_5: ret .cfi_endproc ; -- End function .globl _sdsfromlonglong ; -- Begin function sdsfromlonglong .p2align 2 _sdsfromlonglong: ; @sdsfromlonglong .cfi_startproc ; %bb.0: sub sp, sp, #48 stp x29, x30, [sp, #32] ; 16-byte Folded Spill add x29, sp, #32 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 cmp x0, #0 Lloh33: adrp x8, ___stack_chk_guard@GOTPAGE Lloh34: ldr x8, [x8, ___stack_chk_guard@GOTPAGEOFF] Lloh35: ldr x8, [x8] stur x8, [x29, #-8] cneg x9, x0, mi add x8, sp, #3 mov x10, #-3689348814741910324 ; =0xcccccccccccccccc movk x10, #52429 mov w11, #10 ; =0xa LBB20_1: ; =>This Inner Loop Header: Depth=1 umulh x12, x9, x10 lsr x12, x12, #3 msub w13, w12, w11, w9 orr w13, w13, #0x30 strb w13, [x8], #1 cmp x9, #9 mov x9, x12 b.hi LBB20_1 ; %bb.2: tbz x0, #63, LBB20_4 ; %bb.3: mov w9, #45 ; =0x2d strb w9, [x8], #1 LBB20_4: mov x9, x8 strb wzr, [x9], #-1 add x10, sp, #3 cmp x10, x9 b.hs LBB20_7 ; %bb.5: add x10, x10, #1 LBB20_6: ; =>This Inner Loop Header: Depth=1 ldurb w11, [x10, #-1] ldrb w12, [x9] sturb w12, [x10, #-1] strb w11, [x9], #-1 cmp x10, x9 add x10, x10, #1 b.lo LBB20_6 LBB20_7: add x9, sp, #3 sub w8, w8, w9 sxtw x1, w8 add x0, sp, #3 bl _sdsnewlen ldur x8, [x29, #-8] Lloh36: adrp x9, ___stack_chk_guard@GOTPAGE Lloh37: ldr x9, [x9, ___stack_chk_guard@GOTPAGEOFF] Lloh38: ldr x9, [x9] cmp x9, x8 b.ne LBB20_9 ; %bb.8: ldp x29, x30, [sp, #32] ; 16-byte Folded Reload add sp, sp, #48 ret LBB20_9: bl ___stack_chk_fail .loh AdrpLdrGotLdr Lloh33, Lloh34, Lloh35 .loh AdrpLdrGotLdr Lloh36, Lloh37, Lloh38 .cfi_endproc ; -- End function .globl _sdscatvprintf ; -- Begin function sdscatvprintf .p2align 2 _sdscatvprintf: ; @sdscatvprintf .cfi_startproc ; %bb.0: stp x26, x25, [sp, #-80]! ; 16-byte Folded Spill stp x24, x23, [sp, #16] ; 16-byte Folded Spill stp x22, x21, [sp, #32] ; 16-byte Folded Spill stp x20, x19, [sp, #48] ; 16-byte Folded Spill stp x29, x30, [sp, #64] ; 16-byte Folded Spill add x29, sp, #64 sub sp, sp, #1056 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 .cfi_offset w25, -72 .cfi_offset w26, -80 mov x20, x1 mov x19, x0 Lloh39: adrp x8, ___stack_chk_guard@GOTPAGE Lloh40: ldr x8, [x8, ___stack_chk_guard@GOTPAGEOFF] Lloh41: ldr x8, [x8] stur x8, [x29, #-72] str x2, [sp, #16] mov x0, x1 bl _strlen lsl x21, x0, #1 add x24, sp, #24 Lloh42: adrp x23, _hiredisAllocFns@GOTPAGE Lloh43: ldr x23, [x23, _hiredisAllocFns@GOTPAGEOFF] cmp x21, #1025 b.hs LBB21_2 ; %bb.1: mov w21, #1024 ; =0x400 add x22, sp, #24 b LBB21_3 LBB21_2: ldr x8, [x23] mov x0, x21 blr x8 mov x22, x0 cbz x0, LBB21_9 LBB21_3: add x25, x22, x21 sturb wzr, [x25, #-2] ldr x3, [sp, #16] str x3, [sp, #8] mov x0, x22 mov x1, x21 mov x2, x20 bl _vsnprintf ldurb w8, [x25, #-2] cbz w8, LBB21_7 ; %bb.4: cmp x22, x24 b.eq LBB21_6 ; %bb.5: ldr x8, [x23, #32] mov x0, x22 blr x8 LBB21_6: lsl x21, x21, #1 b LBB21_2 LBB21_7: mov x0, x22 bl _strlen mov x2, x0 mov x0, x19 mov x1, x22 bl _sdscatlen add x8, sp, #24 cmp x22, x8 b.eq LBB21_9 ; %bb.8: ldr x8, [x23, #32] mov x19, x0 mov x0, x22 blr x8 mov x0, x19 LBB21_9: ldur x8, [x29, #-72] Lloh44: adrp x9, ___stack_chk_guard@GOTPAGE Lloh45: ldr x9, [x9, ___stack_chk_guard@GOTPAGEOFF] Lloh46: ldr x9, [x9] cmp x9, x8 b.ne LBB21_11 ; %bb.10: add sp, sp, #1056 ldp x29, x30, [sp, #64] ; 16-byte Folded Reload ldp x20, x19, [sp, #48] ; 16-byte Folded Reload ldp x22, x21, [sp, #32] ; 16-byte Folded Reload ldp x24, x23, [sp, #16] ; 16-byte Folded Reload ldp x26, x25, [sp], #80 ; 16-byte Folded Reload ret LBB21_11: bl ___stack_chk_fail .loh AdrpLdrGot Lloh42, Lloh43 .loh AdrpLdrGotLdr Lloh39, Lloh40, Lloh41 .loh AdrpLdrGotLdr Lloh44, Lloh45, Lloh46 .cfi_endproc ; -- End function .globl _sdscatprintf ; -- Begin function sdscatprintf .p2align 2 _sdscatprintf: ; @sdscatprintf .cfi_startproc ; %bb.0: sub sp, sp, #32 stp x29, x30, [sp, #16] ; 16-byte Folded Spill add x29, sp, #16 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 add x8, x29, #16 str x8, [sp, #8] add x2, x29, #16 bl _sdscatvprintf ldp x29, x30, [sp, #16] ; 16-byte Folded Reload add sp, sp, #32 ret .cfi_endproc ; -- End function .globl _sdscatfmt ; -- Begin function sdscatfmt .p2align 2 _sdscatfmt: ; @sdscatfmt .cfi_startproc ; %bb.0: sub sp, sp, #144 stp x28, x27, [sp, #48] ; 16-byte Folded Spill stp x26, x25, [sp, #64] ; 16-byte Folded Spill stp x24, x23, [sp, #80] ; 16-byte Folded Spill stp x22, x21, [sp, #96] ; 16-byte Folded Spill stp x20, x19, [sp, #112] ; 16-byte Folded Spill stp x29, x30, [sp, #128] ; 16-byte Folded Spill add x29, sp, #128 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 .cfi_offset w25, -72 .cfi_offset w26, -80 .cfi_offset w27, -88 .cfi_offset w28, -96 mov x19, x1 mov x22, #0 ; =0x0 Lloh47: adrp x8, ___stack_chk_guard@GOTPAGE Lloh48: ldr x8, [x8, ___stack_chk_guard@GOTPAGEOFF] Lloh49: ldr x8, [x8] str x8, [sp, #40] add x8, x29, #16 str x8, [sp, #8] ldurb w9, [x0, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB23_5 ; %bb.1: cmp w8, #2 b.eq LBB23_8 ; %bb.2: cmp w8, #3 b.eq LBB23_9 ; %bb.3: cmp w8, #4 b.ne LBB23_10 ; %bb.4: ldur x22, [x0, #-17] ldrb w8, [x19] cbnz w8, LBB23_11 b LBB23_129 LBB23_5: cbz w8, LBB23_128 ; %bb.6: cmp w8, #1 b.ne LBB23_10 ; %bb.7: ldurb w22, [x0, #-3] ldrb w8, [x19] cbnz w8, LBB23_11 b LBB23_129 LBB23_8: ldurh w22, [x0, #-5] ldrb w8, [x19] cbnz w8, LBB23_11 b LBB23_129 LBB23_9: ldur w22, [x0, #-9] LBB23_10: ldrb w8, [x19] cbz w8, LBB23_129 LBB23_11: add x23, sp, #19 sub x24, x23, #1 add x9, x23, #1 str x9, [sp] ; 8-byte Folded Spill mov x26, #-3689348814741910324 ; =0xcccccccccccccccc movk x26, #52429 mov w27, #10 ; =0xa mov x28, #4294967296 ; =0x100000000 b LBB23_15 LBB23_12: ; in Loop: Header=BB23_15 Depth=1 ldur w8, [x0, #-9] add w8, w8, #1 stur w8, [x0, #-9] LBB23_13: ; in Loop: Header=BB23_15 Depth=1 mov w20, #1 ; =0x1 LBB23_14: ; in Loop: Header=BB23_15 Depth=1 add x22, x20, x22 ldrb w8, [x19, #1]! cbz w8, LBB23_129 LBB23_15: ; =>This Loop Header: Depth=1 ; Child Loop BB23_78 Depth 2 ; Child Loop BB23_81 Depth 2 ; Child Loop BB23_54 Depth 2 ; Child Loop BB23_59 Depth 2 ldurb w9, [x0, #-1] and w9, w9, #0x7 cmp w9, #2 b.gt LBB23_19 ; %bb.16: ; in Loop: Header=BB23_15 Depth=1 cmp w9, #1 b.eq LBB23_23 ; %bb.17: ; in Loop: Header=BB23_15 Depth=1 cmp w9, #2 b.ne LBB23_25 ; %bb.18: ; in Loop: Header=BB23_15 Depth=1 ldurh w9, [x0, #-3] ldurh w10, [x0, #-5] sub x9, x9, x10 cbnz x9, LBB23_22 b LBB23_25 LBB23_19: ; in Loop: Header=BB23_15 Depth=1 cmp w9, #3 b.eq LBB23_24 ; %bb.20: ; in Loop: Header=BB23_15 Depth=1 cmp w9, #4 b.ne LBB23_25 ; %bb.21: ; in Loop: Header=BB23_15 Depth=1 ldur x9, [x0, #-9] ldur x10, [x0, #-17] sub x9, x9, x10 cbz x9, LBB23_25 LBB23_22: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #37 b.ne LBB23_41 b LBB23_27 LBB23_23: ; in Loop: Header=BB23_15 Depth=1 ldurb w9, [x0, #-2] ldurb w10, [x0, #-3] sub x9, x9, x10 cbnz x9, LBB23_22 b LBB23_25 LBB23_24: ; in Loop: Header=BB23_15 Depth=1 ldur w9, [x0, #-5] ldur w10, [x0, #-9] sub w9, w9, w10 cbnz x9, LBB23_22 LBB23_25: ; in Loop: Header=BB23_15 Depth=1 mov w1, #1 ; =0x1 bl _sdsMakeRoomFor cbz x0, LBB23_127 ; %bb.26: ; in Loop: Header=BB23_15 Depth=1 ldrb w8, [x19] cmp w8, #37 b.ne LBB23_41 LBB23_27: ; in Loop: Header=BB23_15 Depth=1 ldrb w8, [x19, #1]! cmp w8, #104 b.gt LBB23_32 ; %bb.28: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #73 b.eq LBB23_51 ; %bb.29: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #83 b.eq LBB23_35 ; %bb.30: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #85 b.ne LBB23_41 ; %bb.31: ; in Loop: Header=BB23_15 Depth=1 ldr x8, [sp, #8] add x9, x8, #8 str x9, [sp, #8] ldr x10, [x8] b LBB23_77 LBB23_32: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #105 b.eq LBB23_52 ; %bb.33: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #117 b.eq LBB23_76 ; %bb.34: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #115 b.ne LBB23_41 LBB23_35: ; in Loop: Header=BB23_15 Depth=1 ldr x9, [sp, #8] add x10, x9, #8 str x10, [sp, #8] ldr x21, [x9] cmp w8, #115 b.ne LBB23_67 ; %bb.36: ; in Loop: Header=BB23_15 Depth=1 mov x25, x0 mov x0, x21 bl _strlen mov x20, x0 mov x0, x25 LBB23_37: ; in Loop: Header=BB23_15 Depth=1 mov x8, #0 ; =0x0 ldurb w9, [x0, #-1] and w9, w9, #0x7 cmp w9, #2 b.gt LBB23_72 ; %bb.38: ; in Loop: Header=BB23_15 Depth=1 cmp w9, #1 b.eq LBB23_95 ; %bb.39: ; in Loop: Header=BB23_15 Depth=1 cmp w9, #2 b.ne LBB23_96 ; %bb.40: ; in Loop: Header=BB23_15 Depth=1 ldurh w8, [x0, #-3] ldurh w9, [x0, #-5] b LBB23_75 LBB23_41: ; in Loop: Header=BB23_15 Depth=1 strb w8, [x0, x22] ldurb w9, [x0, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB23_46 ; %bb.42: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #2 b.eq LBB23_50 ; %bb.43: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #3 b.eq LBB23_12 ; %bb.44: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #4 b.ne LBB23_13 ; %bb.45: ; in Loop: Header=BB23_15 Depth=1 ldur x8, [x0, #-17] add x8, x8, #1 stur x8, [x0, #-17] b LBB23_13 LBB23_46: ; in Loop: Header=BB23_15 Depth=1 cbz w8, LBB23_49 ; %bb.47: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #1 b.ne LBB23_13 ; %bb.48: ; in Loop: Header=BB23_15 Depth=1 ldurb w8, [x0, #-3] add w8, w8, #1 sturb w8, [x0, #-3] b LBB23_13 LBB23_49: ; in Loop: Header=BB23_15 Depth=1 and w8, w9, #0xf8 add w8, w8, #8 sturb w8, [x0, #-1] b LBB23_13 LBB23_50: ; in Loop: Header=BB23_15 Depth=1 ldurh w8, [x0, #-5] add w8, w8, #1 sturh w8, [x0, #-5] b LBB23_13 LBB23_51: ; in Loop: Header=BB23_15 Depth=1 ldr x8, [sp, #8] add x9, x8, #8 str x9, [sp, #8] ldr x9, [x8] b LBB23_53 LBB23_52: ; in Loop: Header=BB23_15 Depth=1 ldr x8, [sp, #8] add x9, x8, #8 str x9, [sp, #8] ldrsw x9, [x8] LBB23_53: ; in Loop: Header=BB23_15 Depth=1 cmp x9, #0 cneg x10, x9, mi add x8, sp, #19 LBB23_54: ; Parent Loop BB23_15 Depth=1 ; => This Inner Loop Header: Depth=2 umulh x11, x10, x26 lsr x11, x11, #3 msub w12, w11, w27, w10 orr w12, w12, #0x30 strb w12, [x8], #1 cmp x10, #9 mov x10, x11 b.hi LBB23_54 ; %bb.55: ; in Loop: Header=BB23_15 Depth=1 tbz x9, #63, LBB23_57 ; %bb.56: ; in Loop: Header=BB23_15 Depth=1 mov w9, #45 ; =0x2d strb w9, [x8], #1 LBB23_57: ; in Loop: Header=BB23_15 Depth=1 mov x9, x8 strb wzr, [x9], #-1 cmp x23, x9 b.hs LBB23_60 ; %bb.58: ; in Loop: Header=BB23_15 Depth=1 ldr x10, [sp] ; 8-byte Folded Reload LBB23_59: ; Parent Loop BB23_15 Depth=1 ; => This Inner Loop Header: Depth=2 ldurb w11, [x10, #-1] ldrb w12, [x9] sturb w12, [x10, #-1] strb w11, [x9], #-1 cmp x10, x9 add x10, x10, #1 b.lo LBB23_59 LBB23_60: ; in Loop: Header=BB23_15 Depth=1 mov x9, #0 ; =0x0 ldurb w10, [x0, #-1] and w10, w10, #0x7 cmp w10, #2 b.gt LBB23_64 ; %bb.61: ; in Loop: Header=BB23_15 Depth=1 cmp w10, #1 b.eq LBB23_92 ; %bb.62: ; in Loop: Header=BB23_15 Depth=1 cmp w10, #2 b.ne LBB23_94 ; %bb.63: ; in Loop: Header=BB23_15 Depth=1 ldurh w9, [x0, #-3] ldurh w10, [x0, #-5] sub x9, x9, x10 b LBB23_94 LBB23_64: ; in Loop: Header=BB23_15 Depth=1 cmp w10, #3 b.eq LBB23_93 ; %bb.65: ; in Loop: Header=BB23_15 Depth=1 cmp w10, #4 b.ne LBB23_94 ; %bb.66: ; in Loop: Header=BB23_15 Depth=1 ldur x9, [x0, #-9] ldur x10, [x0, #-17] sub x9, x9, x10 b LBB23_94 LBB23_67: ; in Loop: Header=BB23_15 Depth=1 mov x20, #0 ; =0x0 ldurb w9, [x21, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB23_89 ; %bb.68: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #2 b.eq LBB23_124 ; %bb.69: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #3 b.eq LBB23_125 ; %bb.70: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #4 b.ne LBB23_37 ; %bb.71: ; in Loop: Header=BB23_15 Depth=1 ldur x20, [x21, #-17] b LBB23_37 LBB23_72: ; in Loop: Header=BB23_15 Depth=1 cmp w9, #3 b.eq LBB23_105 ; %bb.73: ; in Loop: Header=BB23_15 Depth=1 cmp w9, #4 b.ne LBB23_96 ; %bb.74: ; in Loop: Header=BB23_15 Depth=1 ldur x8, [x0, #-9] ldur x9, [x0, #-17] LBB23_75: ; in Loop: Header=BB23_15 Depth=1 sub x8, x8, x9 cmp x8, x20 b.lo LBB23_97 b LBB23_98 LBB23_76: ; in Loop: Header=BB23_15 Depth=1 ldr x8, [sp, #8] add x9, x8, #8 str x9, [sp, #8] ldr w10, [x8] LBB23_77: ; in Loop: Header=BB23_15 Depth=1 mov x8, #0 ; =0x0 mov x21, #0 ; =0x0 mov x11, x24 LBB23_78: ; Parent Loop BB23_15 Depth=1 ; => This Inner Loop Header: Depth=2 umulh x9, x10, x26 lsr x12, x9, #3 msub w9, w12, w27, w10 orr w9, w9, #0x30 strb w9, [x23, x21] mov x9, x11 add x21, x21, #1 add x8, x8, x28 add x11, x11, #1 cmp x10, #9 mov x10, x12 b.hi LBB23_78 ; %bb.79: ; in Loop: Header=BB23_15 Depth=1 add x10, x23, x21 strb wzr, [x10], #-1 cmp x23, x10 b.hs LBB23_82 ; %bb.80: ; in Loop: Header=BB23_15 Depth=1 add x10, sp, #19 LBB23_81: ; Parent Loop BB23_15 Depth=1 ; => This Inner Loop Header: Depth=2 ldrb w11, [x10] ldrb w12, [x9, #1] strb w12, [x10], #1 strb w11, [x9, #1] cmp x10, x9 sub x9, x9, #1 b.lo LBB23_81 LBB23_82: ; in Loop: Header=BB23_15 Depth=1 mov x9, #0 ; =0x0 ldurb w10, [x0, #-1] and w10, w10, #0x7 cmp w10, #2 b.gt LBB23_86 ; %bb.83: ; in Loop: Header=BB23_15 Depth=1 cmp w10, #1 b.eq LBB23_106 ; %bb.84: ; in Loop: Header=BB23_15 Depth=1 cmp w10, #2 b.ne LBB23_108 ; %bb.85: ; in Loop: Header=BB23_15 Depth=1 ldurh w9, [x0, #-3] ldurh w10, [x0, #-5] sub x9, x9, x10 b LBB23_108 LBB23_86: ; in Loop: Header=BB23_15 Depth=1 cmp w10, #3 b.eq LBB23_107 ; %bb.87: ; in Loop: Header=BB23_15 Depth=1 cmp w10, #4 b.ne LBB23_108 ; %bb.88: ; in Loop: Header=BB23_15 Depth=1 ldur x9, [x0, #-9] ldur x10, [x0, #-17] sub x9, x9, x10 b LBB23_108 LBB23_89: ; in Loop: Header=BB23_15 Depth=1 cbz w8, LBB23_126 ; %bb.90: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #1 b.ne LBB23_37 ; %bb.91: ; in Loop: Header=BB23_15 Depth=1 ldurb w20, [x21, #-3] b LBB23_37 LBB23_92: ; in Loop: Header=BB23_15 Depth=1 ldurb w9, [x0, #-2] ldurb w10, [x0, #-3] sub x9, x9, x10 b LBB23_94 LBB23_93: ; in Loop: Header=BB23_15 Depth=1 ldur w9, [x0, #-5] ldur w10, [x0, #-9] sub w9, w9, w10 LBB23_94: ; in Loop: Header=BB23_15 Depth=1 sub x21, x8, x23 sxtw x20, w21 cmp x9, x20 b.hs LBB23_110 b LBB23_109 LBB23_95: ; in Loop: Header=BB23_15 Depth=1 ldurb w8, [x0, #-2] ldurb w9, [x0, #-3] sub x8, x8, x9 LBB23_96: ; in Loop: Header=BB23_15 Depth=1 cmp x8, x20 b.hs LBB23_98 LBB23_97: ; in Loop: Header=BB23_15 Depth=1 mov x1, x20 bl _sdsMakeRoomFor cbz x0, LBB23_127 LBB23_98: ; in Loop: Header=BB23_15 Depth=1 mov x25, x0 add x0, x0, x22 mov x1, x21 mov x2, x20 bl _memcpy mov x0, x25 ldurb w9, [x25, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB23_102 ; %bb.99: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #2 b.eq LBB23_121 ; %bb.100: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #3 b.ne LBB23_113 ; %bb.101: ; in Loop: Header=BB23_15 Depth=1 ldur w8, [x0, #-9] add w8, w8, w20 stur w8, [x0, #-9] b LBB23_14 LBB23_102: ; in Loop: Header=BB23_15 Depth=1 cbz w8, LBB23_122 ; %bb.103: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #1 b.ne LBB23_14 ; %bb.104: ; in Loop: Header=BB23_15 Depth=1 ldurb w8, [x0, #-3] add w8, w8, w20 sturb w8, [x0, #-3] b LBB23_14 LBB23_105: ; in Loop: Header=BB23_15 Depth=1 ldur w8, [x0, #-5] ldur w9, [x0, #-9] sub w8, w8, w9 cmp x8, x20 b.lo LBB23_97 b LBB23_98 LBB23_106: ; in Loop: Header=BB23_15 Depth=1 ldurb w9, [x0, #-2] ldurb w10, [x0, #-3] sub x9, x9, x10 b LBB23_108 LBB23_107: ; in Loop: Header=BB23_15 Depth=1 ldur w9, [x0, #-5] ldur w10, [x0, #-9] sub w9, w9, w10 LBB23_108: ; in Loop: Header=BB23_15 Depth=1 asr x20, x8, #32 cmp x9, x20 b.hs LBB23_110 LBB23_109: ; in Loop: Header=BB23_15 Depth=1 mov x1, x20 bl _sdsMakeRoomFor cbz x0, LBB23_127 LBB23_110: ; in Loop: Header=BB23_15 Depth=1 mov x25, x0 add x0, x0, x22 add x1, sp, #19 mov x2, x20 bl _memcpy mov x0, x25 ldurb w9, [x25, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB23_115 ; %bb.111: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #2 b.eq LBB23_118 ; %bb.112: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #3 b.eq LBB23_119 LBB23_113: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #4 b.ne LBB23_14 ; %bb.114: ; in Loop: Header=BB23_15 Depth=1 ldur x8, [x0, #-17] add x8, x8, x20 stur x8, [x0, #-17] b LBB23_14 LBB23_115: ; in Loop: Header=BB23_15 Depth=1 cbz w8, LBB23_120 ; %bb.116: ; in Loop: Header=BB23_15 Depth=1 cmp w8, #1 b.ne LBB23_14 ; %bb.117: ; in Loop: Header=BB23_15 Depth=1 ldurb w8, [x0, #-3] add w8, w8, w21 sturb w8, [x0, #-3] b LBB23_14 LBB23_118: ; in Loop: Header=BB23_15 Depth=1 ldurh w8, [x0, #-5] add w8, w8, w21 sturh w8, [x0, #-5] b LBB23_14 LBB23_119: ; in Loop: Header=BB23_15 Depth=1 ldur w8, [x0, #-9] add w8, w8, w21 stur w8, [x0, #-9] b LBB23_14 LBB23_120: ; in Loop: Header=BB23_15 Depth=1 add w8, w9, w21, lsl #3 b LBB23_123 LBB23_121: ; in Loop: Header=BB23_15 Depth=1 ldurh w8, [x0, #-5] add w8, w8, w20 sturh w8, [x0, #-5] b LBB23_14 LBB23_122: ; in Loop: Header=BB23_15 Depth=1 add w8, w9, w20, lsl #3 LBB23_123: ; in Loop: Header=BB23_15 Depth=1 and w8, w8, #0xf8 sturb w8, [x0, #-1] b LBB23_14 LBB23_124: ; in Loop: Header=BB23_15 Depth=1 ldurh w20, [x21, #-5] b LBB23_37 LBB23_125: ; in Loop: Header=BB23_15 Depth=1 ldur w20, [x21, #-9] b LBB23_37 LBB23_126: ; in Loop: Header=BB23_15 Depth=1 lsr x20, x9, #3 b LBB23_37 LBB23_127: mov x0, #0 ; =0x0 b LBB23_130 LBB23_128: lsr x22, x9, #3 ldrb w8, [x19] cbnz w8, LBB23_11 LBB23_129: strb wzr, [x0, x22] LBB23_130: ldr x8, [sp, #40] Lloh50: adrp x9, ___stack_chk_guard@GOTPAGE Lloh51: ldr x9, [x9, ___stack_chk_guard@GOTPAGEOFF] Lloh52: ldr x9, [x9] cmp x9, x8 b.ne LBB23_132 ; %bb.131: ldp x29, x30, [sp, #128] ; 16-byte Folded Reload ldp x20, x19, [sp, #112] ; 16-byte Folded Reload ldp x22, x21, [sp, #96] ; 16-byte Folded Reload ldp x24, x23, [sp, #80] ; 16-byte Folded Reload ldp x26, x25, [sp, #64] ; 16-byte Folded Reload ldp x28, x27, [sp, #48] ; 16-byte Folded Reload add sp, sp, #144 ret LBB23_132: bl ___stack_chk_fail .loh AdrpLdrGotLdr Lloh47, Lloh48, Lloh49 .loh AdrpLdrGotLdr Lloh50, Lloh51, Lloh52 .cfi_endproc ; -- End function .globl _sdstrim ; -- Begin function sdstrim .p2align 2 _sdstrim: ; @sdstrim .cfi_startproc ; %bb.0: stp x24, x23, [sp, #-64]! ; 16-byte Folded Spill stp x22, x21, [sp, #16] ; 16-byte Folded Spill stp x20, x19, [sp, #32] ; 16-byte Folded Spill stp x29, x30, [sp, #48] ; 16-byte Folded Spill add x29, sp, #48 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 mov x20, x1 mov x19, x0 mov x21, #0 ; =0x0 ldurb w23, [x0, #-1] and w8, w23, #0x7 cmp w8, #1 b.le LBB24_5 ; %bb.1: cmp w8, #2 b.eq LBB24_8 ; %bb.2: cmp w8, #3 b.eq LBB24_9 ; %bb.3: cmp w8, #4 b.ne LBB24_20 ; %bb.4: ldur x8, [x19, #-17] b LBB24_11 LBB24_5: cbz w8, LBB24_10 ; %bb.6: cmp w8, #1 b.ne LBB24_20 ; %bb.7: ldurb w8, [x19, #-3] b LBB24_11 LBB24_8: ldurh w8, [x19, #-5] b LBB24_11 LBB24_9: ldur w8, [x19, #-9] b LBB24_11 LBB24_10: lsr x8, x23, #3 LBB24_11: add x9, x19, x8 sub x21, x9, #1 mov x22, x19 cmp x8, #1 b.lt LBB24_14 LBB24_12: ; =>This Inner Loop Header: Depth=1 ldrsb w1, [x22] mov x0, x20 bl _strchr cbz x0, LBB24_14 ; %bb.13: ; in Loop: Header=BB24_12 Depth=1 add x22, x22, #1 cmp x22, x21 b.ls LBB24_12 LBB24_14: cmp x21, x22 b.ls LBB24_18 LBB24_15: ; =>This Inner Loop Header: Depth=1 ldrsb w1, [x21] mov x0, x20 bl _strchr cbz x0, LBB24_18 ; %bb.16: ; in Loop: Header=BB24_15 Depth=1 sub x21, x21, #1 cmp x21, x22 b.hi LBB24_15 ; %bb.17: mov x21, x22 LBB24_18: sub x8, x21, x22 cmp x22, x21 csinc x21, xzr, x8, hi cmp x19, x22 b.eq LBB24_20 ; %bb.19: mov x0, x19 mov x1, x22 mov x2, x21 bl _memmove ldurb w23, [x19, #-1] LBB24_20: strb wzr, [x19, x21] and w8, w23, #0x7 cmp w8, #1 b.le LBB24_25 ; %bb.21: cmp w8, #2 b.eq LBB24_28 ; %bb.22: cmp w8, #3 b.eq LBB24_29 ; %bb.23: cmp w8, #4 b.ne LBB24_31 ; %bb.24: stur x21, [x19, #-17] b LBB24_31 LBB24_25: cbz w8, LBB24_30 ; %bb.26: cmp w8, #1 b.ne LBB24_31 ; %bb.27: sturb w21, [x19, #-3] b LBB24_31 LBB24_28: sturh w21, [x19, #-5] b LBB24_31 LBB24_29: stur w21, [x19, #-9] b LBB24_31 LBB24_30: lsl w8, w21, #3 sturb w8, [x19, #-1] LBB24_31: mov x0, x19 ldp x29, x30, [sp, #48] ; 16-byte Folded Reload ldp x20, x19, [sp, #32] ; 16-byte Folded Reload ldp x22, x21, [sp, #16] ; 16-byte Folded Reload ldp x24, x23, [sp], #64 ; 16-byte Folded Reload ret .cfi_endproc ; -- End function .globl _sdsrange ; -- Begin function sdsrange .p2align 2 _sdsrange: ; @sdsrange .cfi_startproc ; %bb.0: mov w8, #0 ; =0x0 ldurb w9, [x0, #-1] and w10, w9, #0x7 cmp w10, #1 b.le LBB25_6 ; %bb.1: cmp w10, #2 b.eq LBB25_9 ; %bb.2: cmp w10, #3 b.eq LBB25_10 ; %bb.3: cmp w10, #4 b.ne LBB25_25 ; %bb.4: ldur x8, [x0, #-17] tbz x8, #63, LBB25_11 ; %bb.5: mov w8, #-1 ; =0xffffffff mov x0, x8 ret LBB25_6: cbz w10, LBB25_24 ; %bb.7: cmp w10, #1 b.ne LBB25_25 ; %bb.8: ldurb w8, [x0, #-3] cbnz x8, LBB25_12 b LBB25_25 LBB25_9: ldurh w8, [x0, #-5] cbnz x8, LBB25_12 b LBB25_25 LBB25_10: ldur w8, [x0, #-9] LBB25_11: cbz x8, LBB25_25 LBB25_12: stp x20, x19, [sp, #-32]! ; 16-byte Folded Spill stp x29, x30, [sp, #16] ; 16-byte Folded Spill add x29, sp, #16 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 add x10, x8, x1 bic x10, x10, x10, asr #63 cmp x1, #0 csel x10, x10, x1, lt add x11, x8, x2 bic x11, x11, x11, asr #63 cmp x2, #0 csel x11, x11, x2, lt subs x12, x11, x10 csinc x12, xzr, x12, lo cmp x12, #0 ccmp x8, x10, #0, ne b.hi LBB25_14 ; %bb.13: mov x19, #0 ; =0x0 b LBB25_16 LBB25_14: sub x13, x8, x10 cmp x11, x8 csel x19, x12, x13, lo cmp x10, #0 ccmp x19, #0, #4, ne b.eq LBB25_16 ; %bb.15: add x1, x0, x10 mov x20, x0 mov x2, x19 bl _memmove mov x0, x20 ldurb w9, [x20, #-1] LBB25_16: mov w8, #0 ; =0x0 strb wzr, [x0, x19] and w9, w9, #0x7 cmp w9, #1 b.le LBB25_21 ; %bb.17: cmp w9, #2 b.eq LBB25_26 ; %bb.18: cmp w9, #3 b.eq LBB25_27 ; %bb.19: cmp w9, #4 b.ne LBB25_29 ; %bb.20: mov w8, #0 ; =0x0 stur x19, [x0, #-17] b LBB25_29 LBB25_21: cbz w9, LBB25_28 ; %bb.22: cmp w9, #1 b.ne LBB25_29 ; %bb.23: mov w8, #0 ; =0x0 sturb w19, [x0, #-3] b LBB25_29 LBB25_24: lsr x8, x9, #3 cbnz x8, LBB25_12 LBB25_25: mov x0, x8 ret LBB25_26: mov w8, #0 ; =0x0 sturh w19, [x0, #-5] b LBB25_29 LBB25_27: mov w8, #0 ; =0x0 stur w19, [x0, #-9] b LBB25_29 LBB25_28: mov w8, #0 ; =0x0 lsl w9, w19, #3 sturb w9, [x0, #-1] LBB25_29: ldp x29, x30, [sp, #16] ; 16-byte Folded Reload ldp x20, x19, [sp], #32 ; 16-byte Folded Reload mov x0, x8 ret .cfi_endproc ; -- End function .globl _sdstolower ; -- Begin function sdstolower .p2align 2 _sdstolower: ; @sdstolower .cfi_startproc ; %bb.0: stp x20, x19, [sp, #-32]! ; 16-byte Folded Spill stp x29, x30, [sp, #16] ; 16-byte Folded Spill add x29, sp, #16 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 mov x19, x0 ldurb w9, [x0, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB26_5 ; %bb.1: cmp w8, #2 b.eq LBB26_8 ; %bb.2: cmp w8, #3 b.eq LBB26_9 ; %bb.3: cmp w8, #4 b.ne LBB26_11 ; %bb.4: ldur x20, [x19, #-17] cbnz x20, LBB26_10 b LBB26_11 LBB26_5: cbz w8, LBB26_12 ; %bb.6: cmp w8, #1 b.ne LBB26_11 ; %bb.7: ldurb w20, [x19, #-3] cbnz x20, LBB26_10 b LBB26_11 LBB26_8: ldurh w20, [x19, #-5] cbnz x20, LBB26_10 b LBB26_11 LBB26_9: ldur w20, [x19, #-9] cbz x20, LBB26_11 LBB26_10: ; =>This Inner Loop Header: Depth=1 ldrsb w0, [x19] bl ___tolower strb w0, [x19], #1 subs x20, x20, #1 b.ne LBB26_10 LBB26_11: ldp x29, x30, [sp, #16] ; 16-byte Folded Reload ldp x20, x19, [sp], #32 ; 16-byte Folded Reload ret LBB26_12: lsr x20, x9, #3 cbnz x20, LBB26_10 b LBB26_11 .cfi_endproc ; -- End function .globl _sdstoupper ; -- Begin function sdstoupper .p2align 2 _sdstoupper: ; @sdstoupper .cfi_startproc ; %bb.0: stp x20, x19, [sp, #-32]! ; 16-byte Folded Spill stp x29, x30, [sp, #16] ; 16-byte Folded Spill add x29, sp, #16 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 mov x19, x0 ldurb w9, [x0, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB27_5 ; %bb.1: cmp w8, #2 b.eq LBB27_8 ; %bb.2: cmp w8, #3 b.eq LBB27_9 ; %bb.3: cmp w8, #4 b.ne LBB27_11 ; %bb.4: ldur x20, [x19, #-17] cbnz x20, LBB27_10 b LBB27_11 LBB27_5: cbz w8, LBB27_12 ; %bb.6: cmp w8, #1 b.ne LBB27_11 ; %bb.7: ldurb w20, [x19, #-3] cbnz x20, LBB27_10 b LBB27_11 LBB27_8: ldurh w20, [x19, #-5] cbnz x20, LBB27_10 b LBB27_11 LBB27_9: ldur w20, [x19, #-9] cbz x20, LBB27_11 LBB27_10: ; =>This Inner Loop Header: Depth=1 ldrsb w0, [x19] bl ___toupper strb w0, [x19], #1 subs x20, x20, #1 b.ne LBB27_10 LBB27_11: ldp x29, x30, [sp, #16] ; 16-byte Folded Reload ldp x20, x19, [sp], #32 ; 16-byte Folded Reload ret LBB27_12: lsr x20, x9, #3 cbnz x20, LBB27_10 b LBB27_11 .cfi_endproc ; -- End function .globl _sdscmp ; -- Begin function sdscmp .p2align 2 _sdscmp: ; @sdscmp .cfi_startproc ; %bb.0: stp x20, x19, [sp, #-32]! ; 16-byte Folded Spill stp x29, x30, [sp, #16] ; 16-byte Folded Spill add x29, sp, #16 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 mov x19, #0 ; =0x0 ldurb w9, [x0, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB28_5 ; %bb.1: cmp w8, #2 b.eq LBB28_8 ; %bb.2: cmp w8, #3 b.eq LBB28_9 ; %bb.3: cmp w8, #4 b.ne LBB28_11 ; %bb.4: ldur x19, [x0, #-17] b LBB28_11 LBB28_5: cbz w8, LBB28_10 ; %bb.6: cmp w8, #1 b.ne LBB28_11 ; %bb.7: ldurb w19, [x0, #-3] b LBB28_11 LBB28_8: ldurh w19, [x0, #-5] b LBB28_11 LBB28_9: ldur w19, [x0, #-9] b LBB28_11 LBB28_10: lsr x19, x9, #3 LBB28_11: mov x20, #0 ; =0x0 ldurb w9, [x1, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB28_16 ; %bb.12: cmp w8, #2 b.eq LBB28_19 ; %bb.13: cmp w8, #3 b.eq LBB28_20 ; %bb.14: cmp w8, #4 b.ne LBB28_22 ; %bb.15: ldur x20, [x1, #-17] b LBB28_22 LBB28_16: cbz w8, LBB28_21 ; %bb.17: cmp w8, #1 b.ne LBB28_22 ; %bb.18: ldurb w20, [x1, #-3] b LBB28_22 LBB28_19: ldurh w20, [x1, #-5] b LBB28_22 LBB28_20: ldur w20, [x1, #-9] b LBB28_22 LBB28_21: lsr x20, x9, #3 LBB28_22: cmp x19, x20 csel x2, x19, x20, lo bl _memcmp sub w8, w19, w20 cmp w0, #0 csel w0, w8, w0, eq ldp x29, x30, [sp, #16] ; 16-byte Folded Reload ldp x20, x19, [sp], #32 ; 16-byte Folded Reload ret .cfi_endproc ; -- End function .globl _sdssplitlen ; -- Begin function sdssplitlen .p2align 2 _sdssplitlen: ; @sdssplitlen .cfi_startproc ; %bb.0: sub sp, sp, #128 stp x28, x27, [sp, #32] ; 16-byte Folded Spill stp x26, x25, [sp, #48] ; 16-byte Folded Spill stp x24, x23, [sp, #64] ; 16-byte Folded Spill stp x22, x21, [sp, #80] ; 16-byte Folded Spill stp x20, x19, [sp, #96] ; 16-byte Folded Spill stp x29, x30, [sp, #112] ; 16-byte Folded Spill add x29, sp, #112 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 .cfi_offset w25, -72 .cfi_offset w26, -80 .cfi_offset w27, -88 .cfi_offset w28, -96 mov x20, #0 ; =0x0 tbnz w1, #31, LBB29_30 ; %bb.1: mov x23, x3 subs w8, w3, #1 str w8, [sp, #28] ; 4-byte Folded Spill b.lt LBB29_30 ; %bb.2: mov x25, x4 mov x24, x2 mov x21, x1 mov x22, x0 Lloh53: adrp x8, _hiredisAllocFns@GOTPAGE Lloh54: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh55: ldr x8, [x8] mov w0, #40 ; =0x28 blr x8 mov x20, x0 cbz x0, LBB29_30 ; %bb.3: cbz w21, LBB29_15 ; %bb.4: str x25, [sp, #8] ; 8-byte Folded Spill sub w8, w21, w23 add w19, w8, #1 cmp w19, #1 b.lt LBB29_16 ; %bb.5: mov w26, #0 ; =0x0 mov w25, #0 ; =0x0 mov w27, #0 ; =0x0 mov w28, #5 ; =0x5 mov w8, w23 str x8, [sp, #16] ; 8-byte Folded Spill b LBB29_8 LBB29_6: ; in Loop: Header=BB29_8 Depth=1 add x0, x22, x8 mov x1, x24 ldr x2, [sp, #16] ; 8-byte Folded Reload bl _memcmp cbz w0, LBB29_13 LBB29_7: ; in Loop: Header=BB29_8 Depth=1 add w26, w26, #1 cmp w26, w19 b.ge LBB29_17 LBB29_8: ; =>This Inner Loop Header: Depth=1 add w8, w27, #2 cmp w28, w8 b.ge LBB29_11 ; %bb.9: ; in Loop: Header=BB29_8 Depth=1 lsl w28, w28, #1 sbfiz x1, x28, #3, #32 Lloh56: adrp x8, _hiredisAllocFns@GOTPAGE Lloh57: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh58: ldr x8, [x8, #16] mov x0, x20 blr x8 cbz x0, LBB29_19 ; %bb.10: ; in Loop: Header=BB29_8 Depth=1 mov x20, x0 LBB29_11: ; in Loop: Header=BB29_8 Depth=1 sxtw x8, w26 cmp w23, #1 b.ne LBB29_6 ; %bb.12: ; in Loop: Header=BB29_8 Depth=1 ldrb w9, [x22, x8] ldrb w10, [x24] cmp w9, w10 b.ne LBB29_6 LBB29_13: ; in Loop: Header=BB29_8 Depth=1 add x0, x22, w25, sxtw sub w8, w26, w25 sxtw x1, w8 bl _sdsnewlen str x0, [x20, w27, sxtw #3] cbz x0, LBB29_19 ; %bb.14: ; in Loop: Header=BB29_8 Depth=1 add w27, w27, #1 add w25, w26, w23 ldr w8, [sp, #28] ; 4-byte Folded Reload add w26, w26, w8 b LBB29_7 LBB29_15: mov w8, #0 ; =0x0 b LBB29_29 LBB29_16: mov w27, #0 ; =0x0 mov w25, #0 ; =0x0 LBB29_17: add x0, x22, w25, sxtw sub w8, w21, w25 sxtw x1, w8 bl _sdsnewlen str x0, [x20, w27, sxtw #3] Lloh59: adrp x23, _hiredisAllocFns@GOTPAGE Lloh60: ldr x23, [x23, _hiredisAllocFns@GOTPAGEOFF] cbz x0, LBB29_20 ; %bb.18: add w8, w27, #1 ldr x25, [sp, #8] ; 8-byte Folded Reload b LBB29_29 LBB29_19: ldr x25, [sp, #8] ; 8-byte Folded Reload Lloh61: adrp x23, _hiredisAllocFns@GOTPAGE Lloh62: ldr x23, [x23, _hiredisAllocFns@GOTPAGEOFF] cmp w27, #1 b.ge LBB29_21 b LBB29_28 LBB29_20: ldr x25, [sp, #8] ; 8-byte Folded Reload cmp w27, #1 b.lt LBB29_28 LBB29_21: mov w19, w27 mov x21, x20 Lloh63: adrp x22, l_switch.table.sdssplitargs.17@PAGE Lloh64: add x22, x22, l_switch.table.sdssplitargs.17@PAGEOFF b LBB29_25 LBB29_22: ; in Loop: Header=BB29_25 Depth=1 ldr x9, [x22, x9, lsl #3] LBB29_23: ; in Loop: Header=BB29_25 Depth=1 ldr x10, [x23, #32] add x0, x8, x9 blr x10 LBB29_24: ; in Loop: Header=BB29_25 Depth=1 subs x19, x19, #1 b.eq LBB29_28 LBB29_25: ; =>This Inner Loop Header: Depth=1 ldr x8, [x21], #8 cbz x8, LBB29_24 ; %bb.26: ; in Loop: Header=BB29_25 Depth=1 ldurb w9, [x8, #-1] and x9, x9, #0x7 cmp w9, #4 b.ls LBB29_22 ; %bb.27: ; in Loop: Header=BB29_25 Depth=1 mov x9, #0 ; =0x0 b LBB29_23 LBB29_28: ldr x8, [x23, #32] mov x0, x20 blr x8 mov w8, #0 ; =0x0 mov x20, #0 ; =0x0 LBB29_29: str w8, [x25] LBB29_30: mov x0, x20 ldp x29, x30, [sp, #112] ; 16-byte Folded Reload ldp x20, x19, [sp, #96] ; 16-byte Folded Reload ldp x22, x21, [sp, #80] ; 16-byte Folded Reload ldp x24, x23, [sp, #64] ; 16-byte Folded Reload ldp x26, x25, [sp, #48] ; 16-byte Folded Reload ldp x28, x27, [sp, #32] ; 16-byte Folded Reload add sp, sp, #128 ret .loh AdrpLdrGotLdr Lloh53, Lloh54, Lloh55 .loh AdrpLdrGotLdr Lloh56, Lloh57, Lloh58 .loh AdrpLdrGot Lloh59, Lloh60 .loh AdrpLdrGot Lloh61, Lloh62 .loh AdrpAdd Lloh63, Lloh64 .cfi_endproc ; -- End function .globl _sdsfreesplitres ; -- Begin function sdsfreesplitres .p2align 2 _sdsfreesplitres: ; @sdsfreesplitres .cfi_startproc ; %bb.0: ; kill: def $w1 killed $w1 def $x1 cbz x0, LBB30_10 ; %bb.1: stp x24, x23, [sp, #-64]! ; 16-byte Folded Spill stp x22, x21, [sp, #16] ; 16-byte Folded Spill stp x20, x19, [sp, #32] ; 16-byte Folded Spill stp x29, x30, [sp, #48] ; 16-byte Folded Spill add x29, sp, #48 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 mov x19, x0 Lloh65: adrp x20, _hiredisAllocFns@GOTPAGE Lloh66: ldr x20, [x20, _hiredisAllocFns@GOTPAGEOFF] cbz w1, LBB30_9 ; %bb.2: sxtw x21, w1 sub x22, x19, #8 Lloh67: adrp x23, l_switch.table.sdssplitargs.17@PAGE Lloh68: add x23, x23, l_switch.table.sdssplitargs.17@PAGEOFF b LBB30_6 LBB30_3: ; in Loop: Header=BB30_6 Depth=1 ldr x9, [x23, x9, lsl #3] LBB30_4: ; in Loop: Header=BB30_6 Depth=1 ldr x10, [x20, #32] add x0, x8, x9 blr x10 LBB30_5: ; in Loop: Header=BB30_6 Depth=1 sub x21, x21, #1 cbz x21, LBB30_9 LBB30_6: ; =>This Inner Loop Header: Depth=1 ldr x8, [x22, x21, lsl #3] cbz x8, LBB30_5 ; %bb.7: ; in Loop: Header=BB30_6 Depth=1 ldurb w9, [x8, #-1] and x9, x9, #0x7 cmp w9, #4 b.ls LBB30_3 ; %bb.8: ; in Loop: Header=BB30_6 Depth=1 mov x9, #0 ; =0x0 b LBB30_4 LBB30_9: ldr x1, [x20, #32] mov x0, x19 ldp x29, x30, [sp, #48] ; 16-byte Folded Reload ldp x20, x19, [sp, #32] ; 16-byte Folded Reload ldp x22, x21, [sp, #16] ; 16-byte Folded Reload ldp x24, x23, [sp], #64 ; 16-byte Folded Reload br x1 LBB30_10: ret .loh AdrpLdrGot Lloh65, Lloh66 .loh AdrpAdd Lloh67, Lloh68 .cfi_endproc ; -- End function .globl _sdscatrepr ; -- Begin function sdscatrepr .p2align 2 _sdscatrepr: ; @sdscatrepr .cfi_startproc ; %bb.0: sub sp, sp, #112 stp x28, x27, [sp, #16] ; 16-byte Folded Spill stp x26, x25, [sp, #32] ; 16-byte Folded Spill stp x24, x23, [sp, #48] ; 16-byte Folded Spill stp x22, x21, [sp, #64] ; 16-byte Folded Spill stp x20, x19, [sp, #80] ; 16-byte Folded Spill stp x29, x30, [sp, #96] ; 16-byte Folded Spill add x29, sp, #96 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 .cfi_offset w25, -72 .cfi_offset w26, -80 .cfi_offset w27, -88 .cfi_offset w28, -96 mov x19, x2 mov x20, x1 Lloh69: adrp x1, l_.str.6@PAGE Lloh70: add x1, x1, l_.str.6@PAGEOFF mov w2, #1 ; =0x1 bl _sdscatlen mov x24, x0 cbz x19, LBB31_25 ; %bb.1: Lloh71: adrp x22, l_.str.12@PAGE Lloh72: add x22, x22, l_.str.12@PAGEOFF Lloh73: adrp x23, l_.str.10@PAGE Lloh74: add x23, x23, l_.str.10@PAGEOFF Lloh75: adrp x26, l_.str.8@PAGE Lloh76: add x26, x26, l_.str.8@PAGEOFF Lloh77: adrp x27, l_.str.9@PAGE Lloh78: add x27, x27, l_.str.9@PAGEOFF Lloh79: adrp x28, l_.str.7@PAGE Lloh80: add x28, x28, l_.str.7@PAGEOFF b LBB31_5 LBB31_2: ; in Loop: Header=BB31_5 Depth=1 mov x0, x24 Lloh81: adrp x1, l_.str.11@PAGE Lloh82: add x1, x1, l_.str.11@PAGEOFF LBB31_3: ; in Loop: Header=BB31_5 Depth=1 mov w2, #2 ; =0x2 bl _sdscatlen LBB31_4: ; in Loop: Header=BB31_5 Depth=1 mov x24, x0 add x20, x20, #1 sub x19, x19, #1 cbz x19, LBB31_25 LBB31_5: ; =>This Inner Loop Header: Depth=1 ldrsb w25, [x20] and w21, w25, #0xff cmp w21, #9 b.le LBB31_10 ; %bb.6: ; in Loop: Header=BB31_5 Depth=1 cmp w21, #33 b.gt LBB31_14 ; %bb.7: ; in Loop: Header=BB31_5 Depth=1 cmp w21, #10 b.eq LBB31_20 ; %bb.8: ; in Loop: Header=BB31_5 Depth=1 cmp w21, #13 b.ne LBB31_17 ; %bb.9: ; in Loop: Header=BB31_5 Depth=1 mov x0, x24 mov x1, x27 b LBB31_3 LBB31_10: ; in Loop: Header=BB31_5 Depth=1 cmp w21, #7 b.eq LBB31_2 ; %bb.11: ; in Loop: Header=BB31_5 Depth=1 cmp w21, #8 b.eq LBB31_21 ; %bb.12: ; in Loop: Header=BB31_5 Depth=1 cmp w21, #9 b.ne LBB31_17 ; %bb.13: ; in Loop: Header=BB31_5 Depth=1 mov x0, x24 mov x1, x23 b LBB31_3 LBB31_14: ; in Loop: Header=BB31_5 Depth=1 cmp w21, #92 b.eq LBB31_16 ; %bb.15: ; in Loop: Header=BB31_5 Depth=1 cmp w21, #34 b.ne LBB31_17 LBB31_16: ; in Loop: Header=BB31_5 Depth=1 str x25, [sp] mov x0, x24 mov x1, x28 b LBB31_24 LBB31_17: ; in Loop: Header=BB31_5 Depth=1 tbnz w25, #31, LBB31_22 ; %bb.18: ; in Loop: Header=BB31_5 Depth=1 Lloh83: adrp x8, __DefaultRuneLocale@GOTPAGE Lloh84: ldr x8, [x8, __DefaultRuneLocale@GOTPAGEOFF] add x8, x8, w25, uxtw #2 ldr w8, [x8, #60] and w0, w8, #0x40000 cbz w0, LBB31_23 LBB31_19: ; in Loop: Header=BB31_5 Depth=1 str x25, [sp] mov x0, x24 Lloh85: adrp x1, l_.str.13@PAGE Lloh86: add x1, x1, l_.str.13@PAGEOFF b LBB31_24 LBB31_20: ; in Loop: Header=BB31_5 Depth=1 mov x0, x24 mov x1, x26 b LBB31_3 LBB31_21: ; in Loop: Header=BB31_5 Depth=1 mov x0, x24 mov x1, x22 b LBB31_3 LBB31_22: ; in Loop: Header=BB31_5 Depth=1 mov x0, x25 mov w1, #262144 ; =0x40000 bl ___maskrune cbnz w0, LBB31_19 LBB31_23: ; in Loop: Header=BB31_5 Depth=1 str x21, [sp] mov x0, x24 Lloh87: adrp x1, l_.str.14@PAGE Lloh88: add x1, x1, l_.str.14@PAGEOFF LBB31_24: ; in Loop: Header=BB31_5 Depth=1 bl _sdscatprintf b LBB31_4 LBB31_25: Lloh89: adrp x1, l_.str.6@PAGE Lloh90: add x1, x1, l_.str.6@PAGEOFF mov x0, x24 mov w2, #1 ; =0x1 ldp x29, x30, [sp, #96] ; 16-byte Folded Reload ldp x20, x19, [sp, #80] ; 16-byte Folded Reload ldp x22, x21, [sp, #64] ; 16-byte Folded Reload ldp x24, x23, [sp, #48] ; 16-byte Folded Reload ldp x26, x25, [sp, #32] ; 16-byte Folded Reload ldp x28, x27, [sp, #16] ; 16-byte Folded Reload add sp, sp, #112 b _sdscatlen .loh AdrpAdd Lloh69, Lloh70 .loh AdrpAdd Lloh79, Lloh80 .loh AdrpAdd Lloh77, Lloh78 .loh AdrpAdd Lloh75, Lloh76 .loh AdrpAdd Lloh73, Lloh74 .loh AdrpAdd Lloh71, Lloh72 .loh AdrpAdd Lloh81, Lloh82 .loh AdrpLdrGot Lloh83, Lloh84 .loh AdrpAdd Lloh85, Lloh86 .loh AdrpAdd Lloh87, Lloh88 .loh AdrpAdd Lloh89, Lloh90 .cfi_endproc ; -- End function .globl _hex_digit_to_int ; -- Begin function hex_digit_to_int .p2align 2 _hex_digit_to_int: ; @hex_digit_to_int .cfi_startproc ; %bb.0: sub w8, w0, #49 cmp w8, #53 b.hi LBB32_8 ; %bb.1: mov w0, #1 ; =0x1 Lloh91: adrp x9, lJTI32_0@PAGE Lloh92: add x9, x9, lJTI32_0@PAGEOFF adr x10, LBB32_2 ldrb w11, [x9, x8] add x10, x10, x11, lsl #2 br x10 LBB32_2: mov w0, #10 ; =0xa ret LBB32_3: mov w0, #14 ; =0xe ret LBB32_4: mov w0, #11 ; =0xb ret LBB32_5: mov w0, #12 ; =0xc ret LBB32_6: mov w0, #15 ; =0xf ret LBB32_7: mov w0, #13 ; =0xd ret LBB32_8: mov w0, #0 ; =0x0 LBB32_9: ret LBB32_10: mov w0, #3 ; =0x3 ret LBB32_11: mov w0, #6 ; =0x6 ret LBB32_12: mov w0, #2 ; =0x2 ret LBB32_13: mov w0, #7 ; =0x7 ret LBB32_14: mov w0, #8 ; =0x8 ret LBB32_15: mov w0, #4 ; =0x4 ret LBB32_16: mov w0, #5 ; =0x5 ret LBB32_17: mov w0, #9 ; =0x9 ret .loh AdrpAdd Lloh91, Lloh92 .cfi_endproc .section __TEXT,__const lJTI32_0: .byte (LBB32_9-LBB32_2)>>2 .byte (LBB32_12-LBB32_2)>>2 .byte (LBB32_10-LBB32_2)>>2 .byte (LBB32_15-LBB32_2)>>2 .byte (LBB32_16-LBB32_2)>>2 .byte (LBB32_11-LBB32_2)>>2 .byte (LBB32_13-LBB32_2)>>2 .byte (LBB32_14-LBB32_2)>>2 .byte (LBB32_17-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_2-LBB32_2)>>2 .byte (LBB32_4-LBB32_2)>>2 .byte (LBB32_5-LBB32_2)>>2 .byte (LBB32_7-LBB32_2)>>2 .byte (LBB32_3-LBB32_2)>>2 .byte (LBB32_6-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_8-LBB32_2)>>2 .byte (LBB32_2-LBB32_2)>>2 .byte (LBB32_4-LBB32_2)>>2 .byte (LBB32_5-LBB32_2)>>2 .byte (LBB32_7-LBB32_2)>>2 .byte (LBB32_3-LBB32_2)>>2 .byte (LBB32_6-LBB32_2)>>2 ; -- End function .section __TEXT,__text,regular,pure_instructions .globl _sdssplitargs ; -- Begin function sdssplitargs .p2align 2 _sdssplitargs: ; @sdssplitargs .cfi_startproc ; %bb.0: sub sp, sp, #112 stp x28, x27, [sp, #16] ; 16-byte Folded Spill stp x26, x25, [sp, #32] ; 16-byte Folded Spill stp x24, x23, [sp, #48] ; 16-byte Folded Spill stp x22, x21, [sp, #64] ; 16-byte Folded Spill stp x20, x19, [sp, #80] ; 16-byte Folded Spill stp x29, x30, [sp, #96] ; 16-byte Folded Spill add x29, sp, #96 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 .cfi_offset w25, -72 .cfi_offset w26, -80 .cfi_offset w27, -88 .cfi_offset w28, -96 str wzr, [x1] ldrb w8, [x0] cbz w8, LBB33_59 ; %bb.1: mov x19, x1 mov x22, x0 mov x20, #0 ; =0x0 Lloh93: adrp x27, __DefaultRuneLocale@GOTPAGE Lloh94: ldr x27, [x27, __DefaultRuneLocale@GOTPAGEOFF] Lloh95: adrp x26, _hiredisAllocFns@GOTPAGE Lloh96: ldr x26, [x26, _hiredisAllocFns@GOTPAGEOFF] mov w25, #1 ; =0x1 mov w23, #3 ; =0x3 Lloh97: adrp x21, l_.str.15@PAGE Lloh98: add x21, x21, l_.str.15@PAGEOFF b LBB33_4 LBB33_2: ; in Loop: Header=BB33_4 Depth=1 mov w1, #16384 ; =0x4000 bl ___maskrune cbz w0, LBB33_6 LBB33_3: ; in Loop: Header=BB33_4 Depth=1 ldrb w8, [x22, #1]! cbz w8, LBB33_58 LBB33_4: ; =>This Loop Header: Depth=1 ; Child Loop BB33_13 Depth 2 sxtb w0, w8 tbnz w8, #7, LBB33_2 ; %bb.5: ; in Loop: Header=BB33_4 Depth=1 add x8, x27, w0, uxtw #2 ldr w8, [x8, #60] and w0, w8, #0x4000 cbnz w0, LBB33_3 LBB33_6: ; in Loop: Header=BB33_4 Depth=1 ldrb w8, [x22] cbz w8, LBB33_58 ; %bb.7: ; in Loop: Header=BB33_4 Depth=1 ldr x8, [x26] mov w0, #4 ; =0x4 blr x8 cbz x0, LBB33_9 ; %bb.8: ; in Loop: Header=BB33_4 Depth=1 movi.2s v0, #1, lsl #16 st1.s { v0 }[0], [x0], x23 LBB33_9: ; in Loop: Header=BB33_4 Depth=1 mov w28, #0 ; =0x0 mov w23, #0 ; =0x0 b LBB33_13 LBB33_10: ; in Loop: Header=BB33_13 Depth=2 mov w9, #10 ; =0xa LBB33_11: ; in Loop: Header=BB33_13 Depth=2 strb w9, [sp, #14] mov w23, #1 ; =0x1 add x1, sp, #14 mov w2, #1 ; =0x1 bl _sdscatlen mov x22, x24 LBB33_12: ; in Loop: Header=BB33_13 Depth=2 mov x8, x22 ldrb w9, [x8], #1 cmp w9, #0 csel x22, x22, x8, eq LBB33_13: ; Parent Loop BB33_4 Depth=1 ; => This Inner Loop Header: Depth=2 cbz w23, LBB33_17 ; %bb.14: ; in Loop: Header=BB33_13 Depth=2 ldrb w8, [x22] cmp w8, #92 b.eq LBB33_21 ; %bb.15: ; in Loop: Header=BB33_13 Depth=2 cbz w8, LBB33_62 ; %bb.16: ; in Loop: Header=BB33_13 Depth=2 cmp w8, #34 b.ne LBB33_28 b LBB33_50 LBB33_17: ; in Loop: Header=BB33_13 Depth=2 ldrb w8, [x22] cbz w28, LBB33_30 ; %bb.18: ; in Loop: Header=BB33_13 Depth=2 cmp w8, #92 b.eq LBB33_34 ; %bb.19: ; in Loop: Header=BB33_13 Depth=2 cbz w8, LBB33_62 ; %bb.20: ; in Loop: Header=BB33_13 Depth=2 cmp w8, #39 b.ne LBB33_36 b LBB33_53 LBB33_21: ; in Loop: Header=BB33_13 Depth=2 mov x24, x22 ldrb w9, [x24, #1]! cbz w9, LBB33_28 ; %bb.22: ; in Loop: Header=BB33_13 Depth=2 cmp w9, #120 b.ne LBB33_37 ; %bb.23: ; in Loop: Header=BB33_13 Depth=2 ldrsb x8, [x22, #2] tbnz x8, #63, LBB33_11 ; %bb.24: ; in Loop: Header=BB33_13 Depth=2 add x10, x27, x8, lsl #2 ldr w10, [x10, #60] tbz w10, #16, LBB33_11 ; %bb.25: ; in Loop: Header=BB33_13 Depth=2 ldrsb x23, [x22, #3]! tbnz x23, #63, LBB33_11 ; %bb.26: ; in Loop: Header=BB33_13 Depth=2 add x10, x27, x23, lsl #2 ldr w10, [x10, #60] tbz w10, #16, LBB33_11 ; %bb.27: ; in Loop: Header=BB33_13 Depth=2 mov x24, x0 mov x0, x8 bl _hex_digit_to_int mov x25, x0 mov x0, x23 bl _hex_digit_to_int orr w8, w0, w25, lsl #4 mov w25, #1 ; =0x1 strb w8, [sp, #15] mov w23, #1 ; =0x1 add x1, sp, #15 mov x0, x24 b LBB33_29 LBB33_28: ; in Loop: Header=BB33_13 Depth=2 mov w23, #1 ; =0x1 mov x1, x22 LBB33_29: ; in Loop: Header=BB33_13 Depth=2 mov w2, #1 ; =0x1 bl _sdscatlen ; kill: def $w23 killed $w23 killed $x23 def $x23 b LBB33_12 LBB33_30: ; in Loop: Header=BB33_13 Depth=2 cmp w8, #39 b.hi LBB33_47 ; %bb.31: ; in Loop: Header=BB33_13 Depth=2 cmp x8, #34 b.eq LBB33_42 ; %bb.32: ; in Loop: Header=BB33_13 Depth=2 cmp x8, #39 b.ne LBB33_46 ; %bb.33: ; in Loop: Header=BB33_13 Depth=2 mov w23, #0 ; =0x0 mov w28, #1 ; =0x1 b LBB33_12 LBB33_34: ; in Loop: Header=BB33_13 Depth=2 mov x24, x22 ldrb w8, [x24, #1]! cmp w8, #39 b.ne LBB33_36 ; %bb.35: ; in Loop: Header=BB33_13 Depth=2 mov w28, #1 ; =0x1 mov x1, x21 mov w2, #1 ; =0x1 bl _sdscatlen mov w23, #0 ; =0x0 mov x22, x24 ; kill: def $w28 killed $w28 killed $x28 def $x28 b LBB33_12 LBB33_36: ; in Loop: Header=BB33_13 Depth=2 mov w28, #1 ; =0x1 mov x1, x22 mov w2, #1 ; =0x1 bl _sdscatlen mov w23, #0 ; =0x0 b LBB33_12 LBB33_37: ; in Loop: Header=BB33_13 Depth=2 cmp w9, #109 b.le LBB33_43 ; %bb.38: ; in Loop: Header=BB33_13 Depth=2 cmp w9, #110 b.eq LBB33_10 ; %bb.39: ; in Loop: Header=BB33_13 Depth=2 cmp w9, #116 b.eq LBB33_48 ; %bb.40: ; in Loop: Header=BB33_13 Depth=2 cmp w9, #114 b.ne LBB33_11 ; %bb.41: ; in Loop: Header=BB33_13 Depth=2 mov w9, #13 ; =0xd b LBB33_11 LBB33_42: ; in Loop: Header=BB33_13 Depth=2 mov w28, #0 ; =0x0 mov w23, #1 ; =0x1 b LBB33_12 LBB33_43: ; in Loop: Header=BB33_13 Depth=2 cmp w9, #97 b.eq LBB33_49 ; %bb.44: ; in Loop: Header=BB33_13 Depth=2 cmp w9, #98 b.ne LBB33_11 ; %bb.45: ; in Loop: Header=BB33_13 Depth=2 mov w9, #8 ; =0x8 b LBB33_11 LBB33_46: ; in Loop: Header=BB33_13 Depth=2 lsl x8, x25, x8 mov x9, #9729 ; =0x2601 movk x9, #1, lsl #32 tst x8, x9 b.ne LBB33_56 LBB33_47: ; in Loop: Header=BB33_13 Depth=2 mov x1, x22 mov w2, #1 ; =0x1 bl _sdscatlen mov w23, #0 ; =0x0 mov w28, #0 ; =0x0 b LBB33_12 LBB33_48: ; in Loop: Header=BB33_13 Depth=2 mov w9, #9 ; =0x9 b LBB33_11 LBB33_49: ; in Loop: Header=BB33_13 Depth=2 mov w9, #7 ; =0x7 b LBB33_11 LBB33_50: ; in Loop: Header=BB33_4 Depth=1 ldrsb w8, [x22, #1] cbz w8, LBB33_56 ; %bb.51: ; in Loop: Header=BB33_4 Depth=1 tbnz w8, #31, LBB33_55 LBB33_52: ; in Loop: Header=BB33_4 Depth=1 add x8, x27, w8, uxtw #2 ldr w8, [x8, #60] tbnz w8, #14, LBB33_56 b LBB33_62 LBB33_53: ; in Loop: Header=BB33_4 Depth=1 ldrsb w8, [x22, #1] cbz w8, LBB33_56 ; %bb.54: ; in Loop: Header=BB33_4 Depth=1 tbz w8, #31, LBB33_52 LBB33_55: ; in Loop: Header=BB33_4 Depth=1 mov x23, x0 mov x0, x8 mov w1, #16384 ; =0x4000 bl ___maskrune mov x8, x0 mov x0, x23 cbz w8, LBB33_62 LBB33_56: ; in Loop: Header=BB33_4 Depth=1 mov x23, x0 ldrb w24, [x22] ldrsw x8, [x19] lsl x8, x8, #3 ldr x9, [x26, #16] add x1, x8, #8 mov x0, x20 blr x9 cbz x0, LBB33_77 ; %bb.57: ; in Loop: Header=BB33_4 Depth=1 cmp w24, #0 cinc x22, x22, ne ldrsw x8, [x19] str x23, [x0, x8, lsl #3] add w8, w8, #1 str w8, [x19] ldrb w8, [x22] mov x20, x0 mov w23, #3 ; =0x3 cbnz w8, LBB33_4 b LBB33_60 LBB33_58: mov x0, x20 cbnz x0, LBB33_76 b LBB33_61 LBB33_59: mov x0, #0 ; =0x0 LBB33_60: cbnz x0, LBB33_76 LBB33_61: Lloh99: adrp x8, _hiredisAllocFns@GOTPAGE Lloh100: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh101: ldr x1, [x8] mov w0, #8 ; =0x8 ldp x29, x30, [sp, #96] ; 16-byte Folded Reload ldp x20, x19, [sp, #80] ; 16-byte Folded Reload ldp x22, x21, [sp, #64] ; 16-byte Folded Reload ldp x24, x23, [sp, #48] ; 16-byte Folded Reload ldp x26, x25, [sp, #32] ; 16-byte Folded Reload ldp x28, x27, [sp, #16] ; 16-byte Folded Reload add sp, sp, #112 br x1 LBB33_62: mov x21, x0 ldr w8, [x19] sub w9, w8, #1 str w9, [x19] cbz w8, LBB33_70 ; %bb.63: Lloh102: adrp x22, l_switch.table.sdssplitargs.17@PAGE Lloh103: add x22, x22, l_switch.table.sdssplitargs.17@PAGEOFF b LBB33_67 LBB33_64: ; in Loop: Header=BB33_67 Depth=1 ldr x9, [x22, x9, lsl #3] LBB33_65: ; in Loop: Header=BB33_67 Depth=1 ldr x10, [x26, #32] add x0, x8, x9 blr x10 ldr w9, [x19] LBB33_66: ; in Loop: Header=BB33_67 Depth=1 mov x8, x9 sub w9, w9, #1 str w9, [x19] cbz w8, LBB33_70 LBB33_67: ; =>This Inner Loop Header: Depth=1 ldr x8, [x20, w9, sxtw #3] cbz x8, LBB33_66 ; %bb.68: ; in Loop: Header=BB33_67 Depth=1 ldurb w9, [x8, #-1] and x9, x9, #0x7 cmp w9, #4 b.ls LBB33_64 ; %bb.69: ; in Loop: Header=BB33_67 Depth=1 mov x9, #0 ; =0x0 b LBB33_65 LBB33_70: ldr x8, [x26, #32] mov x0, x20 blr x8 cbz x21, LBB33_75 ; %bb.71: ldurb w8, [x21, #-1] and x8, x8, #0x7 cmp w8, #4 b.hi LBB33_73 ; %bb.72: Lloh104: adrp x9, l_switch.table.sdssplitargs.17@PAGE Lloh105: add x9, x9, l_switch.table.sdssplitargs.17@PAGEOFF ldr x8, [x9, x8, lsl #3] b LBB33_74 LBB33_73: mov x8, #0 ; =0x0 LBB33_74: ldr x9, [x26, #32] add x0, x21, x8 blr x9 LBB33_75: mov x0, #0 ; =0x0 str wzr, [x19] LBB33_76: ldp x29, x30, [sp, #96] ; 16-byte Folded Reload ldp x20, x19, [sp, #80] ; 16-byte Folded Reload ldp x22, x21, [sp, #64] ; 16-byte Folded Reload ldp x24, x23, [sp, #48] ; 16-byte Folded Reload ldp x26, x25, [sp, #32] ; 16-byte Folded Reload ldp x28, x27, [sp, #16] ; 16-byte Folded Reload add sp, sp, #112 ret LBB33_77: ldr x8, [x26, #32] mov x0, x20 blr x8 mov x0, #0 ; =0x0 b LBB33_76 .loh AdrpAdd Lloh97, Lloh98 .loh AdrpLdrGot Lloh95, Lloh96 .loh AdrpLdrGot Lloh93, Lloh94 .loh AdrpLdrGotLdr Lloh99, Lloh100, Lloh101 .loh AdrpAdd Lloh102, Lloh103 .loh AdrpAdd Lloh104, Lloh105 .cfi_endproc ; -- End function .globl _sdsmapchars ; -- Begin function sdsmapchars .p2align 2 _sdsmapchars: ; @sdsmapchars .cfi_startproc ; %bb.0: ldurb w9, [x0, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB34_5 ; %bb.1: cmp w8, #2 b.eq LBB34_8 ; %bb.2: cmp w8, #3 b.eq LBB34_9 ; %bb.3: cmp w8, #4 b.ne LBB34_18 ; %bb.4: ldur x8, [x0, #-17] cbnz x8, LBB34_11 b LBB34_18 LBB34_5: cbz w8, LBB34_10 ; %bb.6: cmp w8, #1 b.ne LBB34_18 ; %bb.7: ldurb w8, [x0, #-3] cbnz x8, LBB34_11 b LBB34_18 LBB34_8: ldurh w8, [x0, #-5] cbnz x8, LBB34_11 b LBB34_18 LBB34_9: ldur w8, [x0, #-9] cbnz x8, LBB34_11 b LBB34_18 LBB34_10: lsr x8, x9, #3 cbz x8, LBB34_18 LBB34_11: mov x9, #0 ; =0x0 b LBB34_14 LBB34_12: ; in Loop: Header=BB34_14 Depth=1 ldrb w10, [x12] strb w10, [x0, x9] LBB34_13: ; in Loop: Header=BB34_14 Depth=1 add x9, x9, #1 cmp x9, x8 b.eq LBB34_18 LBB34_14: ; =>This Loop Header: Depth=1 ; Child Loop BB34_16 Depth 2 cbz x3, LBB34_13 ; %bb.15: ; in Loop: Header=BB34_14 Depth=1 ldrb w10, [x0, x9] mov x11, x1 mov x13, x3 mov x12, x2 LBB34_16: ; Parent Loop BB34_14 Depth=1 ; => This Inner Loop Header: Depth=2 ldrb w14, [x11], #1 cmp w10, w14 b.eq LBB34_12 ; %bb.17: ; in Loop: Header=BB34_16 Depth=2 add x12, x12, #1 subs x13, x13, #1 b.ne LBB34_16 b LBB34_13 LBB34_18: ret .cfi_endproc ; -- End function .globl _sdsjoin ; -- Begin function sdsjoin .p2align 2 _sdsjoin: ; @sdsjoin .cfi_startproc ; %bb.0: stp x24, x23, [sp, #-64]! ; 16-byte Folded Spill stp x22, x21, [sp, #16] ; 16-byte Folded Spill stp x20, x19, [sp, #32] ; 16-byte Folded Spill stp x29, x30, [sp, #48] ; 16-byte Folded Spill add x29, sp, #48 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 mov x19, x2 mov x22, x1 mov x20, x0 Lloh106: adrp x8, _hiredisAllocFns@GOTPAGE Lloh107: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh108: ldr x8, [x8] mov w0, #4 ; =0x4 blr x8 mov x21, x0 cbz x0, LBB35_2 ; %bb.1: movi.2s v0, #1, lsl #16 mov w8, #3 ; =0x3 st1.s { v0 }[0], [x21], x8 LBB35_2: subs w23, w22, #1 b.lt LBB35_7 ; %bb.3: mov w24, w22 b LBB35_5 LBB35_4: ; in Loop: Header=BB35_5 Depth=1 sub x23, x23, #1 subs x24, x24, #1 b.eq LBB35_7 LBB35_5: ; =>This Inner Loop Header: Depth=1 ldr x22, [x20], #8 mov x0, x22 bl _strlen mov x2, x0 mov x0, x21 mov x1, x22 bl _sdscatlen mov x21, x0 cbz x23, LBB35_4 ; %bb.6: ; in Loop: Header=BB35_5 Depth=1 mov x0, x19 bl _strlen mov x2, x0 mov x0, x21 mov x1, x19 bl _sdscatlen mov x21, x0 b LBB35_4 LBB35_7: mov x0, x21 ldp x29, x30, [sp, #48] ; 16-byte Folded Reload ldp x20, x19, [sp, #32] ; 16-byte Folded Reload ldp x22, x21, [sp, #16] ; 16-byte Folded Reload ldp x24, x23, [sp], #64 ; 16-byte Folded Reload ret .loh AdrpLdrGotLdr Lloh106, Lloh107, Lloh108 .cfi_endproc ; -- End function .globl _sdsjoinsds ; -- Begin function sdsjoinsds .p2align 2 _sdsjoinsds: ; @sdsjoinsds .cfi_startproc ; %bb.0: stp x24, x23, [sp, #-64]! ; 16-byte Folded Spill stp x22, x21, [sp, #16] ; 16-byte Folded Spill stp x20, x19, [sp, #32] ; 16-byte Folded Spill stp x29, x30, [sp, #48] ; 16-byte Folded Spill add x29, sp, #48 .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 .cfi_offset w19, -24 .cfi_offset w20, -32 .cfi_offset w21, -40 .cfi_offset w22, -48 .cfi_offset w23, -56 .cfi_offset w24, -64 mov x19, x3 mov x20, x2 mov x22, x1 mov x21, x0 Lloh109: adrp x8, _hiredisAllocFns@GOTPAGE Lloh110: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh111: ldr x8, [x8] mov w0, #4 ; =0x4 blr x8 cbz x0, LBB36_2 ; %bb.1: movi.2s v0, #1, lsl #16 mov w8, #3 ; =0x3 st1.s { v0 }[0], [x0], x8 LBB36_2: subs w23, w22, #1 b.lt LBB36_18 ; %bb.3: mov w22, w22 b LBB36_5 LBB36_4: ; in Loop: Header=BB36_5 Depth=1 sub x23, x23, #1 subs x22, x22, #1 b.eq LBB36_18 LBB36_5: ; =>This Inner Loop Header: Depth=1 mov x2, #0 ; =0x0 ldr x1, [x21], #8 ldurb w9, [x1, #-1] and w8, w9, #0x7 cmp w8, #1 b.le LBB36_10 ; %bb.6: ; in Loop: Header=BB36_5 Depth=1 cmp w8, #2 b.eq LBB36_13 ; %bb.7: ; in Loop: Header=BB36_5 Depth=1 cmp w8, #3 b.eq LBB36_14 ; %bb.8: ; in Loop: Header=BB36_5 Depth=1 cmp w8, #4 b.ne LBB36_15 ; %bb.9: ; in Loop: Header=BB36_5 Depth=1 ldur x2, [x1, #-17] bl _sdscatlen cbnz x23, LBB36_16 b LBB36_4 LBB36_10: ; in Loop: Header=BB36_5 Depth=1 cbz w8, LBB36_17 ; %bb.11: ; in Loop: Header=BB36_5 Depth=1 cmp w8, #1 b.ne LBB36_15 ; %bb.12: ; in Loop: Header=BB36_5 Depth=1 ldurb w2, [x1, #-3] bl _sdscatlen cbnz x23, LBB36_16 b LBB36_4 LBB36_13: ; in Loop: Header=BB36_5 Depth=1 ldurh w2, [x1, #-5] bl _sdscatlen cbnz x23, LBB36_16 b LBB36_4 LBB36_14: ; in Loop: Header=BB36_5 Depth=1 ldur w2, [x1, #-9] LBB36_15: ; in Loop: Header=BB36_5 Depth=1 bl _sdscatlen cbz x23, LBB36_4 LBB36_16: ; in Loop: Header=BB36_5 Depth=1 mov x1, x20 mov x2, x19 bl _sdscatlen b LBB36_4 LBB36_17: ; in Loop: Header=BB36_5 Depth=1 lsr x2, x9, #3 bl _sdscatlen cbnz x23, LBB36_16 b LBB36_4 LBB36_18: ldp x29, x30, [sp, #48] ; 16-byte Folded Reload ldp x20, x19, [sp, #32] ; 16-byte Folded Reload ldp x22, x21, [sp, #16] ; 16-byte Folded Reload ldp x24, x23, [sp], #64 ; 16-byte Folded Reload ret .loh AdrpLdrGotLdr Lloh109, Lloh110, Lloh111 .cfi_endproc ; -- End function .globl _sds_malloc ; -- Begin function sds_malloc .p2align 2 _sds_malloc: ; @sds_malloc .cfi_startproc ; %bb.0: Lloh112: adrp x8, _hiredisAllocFns@GOTPAGE Lloh113: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh114: ldr x1, [x8] br x1 .loh AdrpLdrGotLdr Lloh112, Lloh113, Lloh114 .cfi_endproc ; -- End function .globl _sds_realloc ; -- Begin function sds_realloc .p2align 2 _sds_realloc: ; @sds_realloc .cfi_startproc ; %bb.0: Lloh115: adrp x8, _hiredisAllocFns@GOTPAGE Lloh116: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh117: ldr x2, [x8, #16] br x2 .loh AdrpLdrGotLdr Lloh115, Lloh116, Lloh117 .cfi_endproc ; -- End function .globl _sds_free ; -- Begin function sds_free .p2align 2 _sds_free: ; @sds_free .cfi_startproc ; %bb.0: Lloh118: adrp x8, _hiredisAllocFns@GOTPAGE Lloh119: ldr x8, [x8, _hiredisAllocFns@GOTPAGEOFF] Lloh120: ldr x1, [x8, #32] br x1 .loh AdrpLdrGotLdr Lloh118, Lloh119, Lloh120 .cfi_endproc ; -- End function .p2align 2 ; -- Begin function sdsIncrLen.cold.1 _sdsIncrLen.cold.1: ; @sdsIncrLen.cold.1 .cfi_startproc ; %bb.0: stp x29, x30, [sp, #-16]! ; 16-byte Folded Spill mov x29, sp .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 Lloh121: adrp x0, l___func__.sdsIncrLen@PAGE Lloh122: add x0, x0, l___func__.sdsIncrLen@PAGEOFF Lloh123: adrp x1, l_.str.1@PAGE Lloh124: add x1, x1, l_.str.1@PAGEOFF Lloh125: adrp x3, l_.str.5@PAGE Lloh126: add x3, x3, l_.str.5@PAGEOFF mov w2, #349 ; =0x15d bl ___assert_rtn .loh AdrpAdd Lloh125, Lloh126 .loh AdrpAdd Lloh123, Lloh124 .loh AdrpAdd Lloh121, Lloh122 .cfi_endproc ; -- End function .p2align 2 ; -- Begin function sdsIncrLen.cold.2 _sdsIncrLen.cold.2: ; @sdsIncrLen.cold.2 .cfi_startproc ; %bb.0: stp x29, x30, [sp, #-16]! ; 16-byte Folded Spill mov x29, sp .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 Lloh127: adrp x0, l___func__.sdsIncrLen@PAGE Lloh128: add x0, x0, l___func__.sdsIncrLen@PAGEOFF Lloh129: adrp x1, l_.str.1@PAGE Lloh130: add x1, x1, l_.str.1@PAGEOFF Lloh131: adrp x3, l_.str.4@PAGE Lloh132: add x3, x3, l_.str.4@PAGEOFF mov w2, #343 ; =0x157 bl ___assert_rtn .loh AdrpAdd Lloh131, Lloh132 .loh AdrpAdd Lloh129, Lloh130 .loh AdrpAdd Lloh127, Lloh128 .cfi_endproc ; -- End function .p2align 2 ; -- Begin function sdsIncrLen.cold.3 _sdsIncrLen.cold.3: ; @sdsIncrLen.cold.3 .cfi_startproc ; %bb.0: stp x29, x30, [sp, #-16]! ; 16-byte Folded Spill mov x29, sp .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 Lloh133: adrp x0, l___func__.sdsIncrLen@PAGE Lloh134: add x0, x0, l___func__.sdsIncrLen@PAGEOFF Lloh135: adrp x1, l_.str.1@PAGE Lloh136: add x1, x1, l_.str.1@PAGEOFF Lloh137: adrp x3, l_.str.3@PAGE Lloh138: add x3, x3, l_.str.3@PAGEOFF mov w2, #337 ; =0x151 bl ___assert_rtn .loh AdrpAdd Lloh137, Lloh138 .loh AdrpAdd Lloh135, Lloh136 .loh AdrpAdd Lloh133, Lloh134 .cfi_endproc ; -- End function .p2align 2 ; -- Begin function sdsIncrLen.cold.4 _sdsIncrLen.cold.4: ; @sdsIncrLen.cold.4 .cfi_startproc ; %bb.0: stp x29, x30, [sp, #-16]! ; 16-byte Folded Spill mov x29, sp .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 Lloh139: adrp x0, l___func__.sdsIncrLen@PAGE Lloh140: add x0, x0, l___func__.sdsIncrLen@PAGEOFF Lloh141: adrp x1, l_.str.1@PAGE Lloh142: add x1, x1, l_.str.1@PAGEOFF Lloh143: adrp x3, l_.str.3@PAGE Lloh144: add x3, x3, l_.str.3@PAGEOFF mov w2, #331 ; =0x14b bl ___assert_rtn .loh AdrpAdd Lloh143, Lloh144 .loh AdrpAdd Lloh141, Lloh142 .loh AdrpAdd Lloh139, Lloh140 .cfi_endproc ; -- End function .p2align 2 ; -- Begin function sdsIncrLen.cold.5 _sdsIncrLen.cold.5: ; @sdsIncrLen.cold.5 .cfi_startproc ; %bb.0: stp x29, x30, [sp, #-16]! ; 16-byte Folded Spill mov x29, sp .cfi_def_cfa w29, 16 .cfi_offset w30, -8 .cfi_offset w29, -16 Lloh145: adrp x0, l___func__.sdsIncrLen@PAGE Lloh146: add x0, x0, l___func__.sdsIncrLen@PAGEOFF Lloh147: adrp x1, l_.str.1@PAGE Lloh148: add x1, x1, l_.str.1@PAGEOFF Lloh149: adrp x3, l_.str.2@PAGE Lloh150: add x3, x3, l_.str.2@PAGEOFF mov w2, #324 ; =0x144 bl ___assert_rtn .loh AdrpAdd Lloh149, Lloh150 .loh AdrpAdd Lloh147, Lloh148 .loh AdrpAdd Lloh145, Lloh146 .cfi_endproc ; -- End function .section __TEXT,__cstring,cstring_literals l___func__.sdsIncrLen: ; @__func__.sdsIncrLen .asciz "sdsIncrLen" l_.str.1: ; @.str.1 .asciz "sds.c" l_.str.2: ; @.str.2 .asciz "(incr > 0 && oldlen+incr < 32) || (incr < 0 && oldlen >= (unsigned int)(-incr))" l_.str.3: ; @.str.3 .asciz "(incr >= 0 && sh->alloc-sh->len >= incr) || (incr < 0 && sh->len >= (unsigned int)(-incr))" l_.str.4: ; @.str.4 .asciz "(incr >= 0 && sh->alloc-sh->len >= (unsigned int)incr) || (incr < 0 && sh->len >= (unsigned int)(-incr))" l_.str.5: ; @.str.5 .asciz "(incr >= 0 && sh->alloc-sh->len >= (uint64_t)incr) || (incr < 0 && sh->len >= (uint64_t)(-incr))" l_.str.6: ; @.str.6 .asciz "\"" l_.str.7: ; @.str.7 .asciz "\\%c" l_.str.8: ; @.str.8 .asciz "\\n" l_.str.9: ; @.str.9 .asciz "\\r" l_.str.10: ; @.str.10 .asciz "\\t" l_.str.11: ; @.str.11 .asciz "\\a" l_.str.12: ; @.str.12 .asciz "\\b" l_.str.13: ; @.str.13 .asciz "%c" l_.str.14: ; @.str.14 .asciz "\\x%02x" l_.str.15: ; @.str.15 .asciz "'" .section __TEXT,__const .p2align 3, 0x0 ; @switch.table.sdsMakeRoomFor.16 l_switch.table.sdsMakeRoomFor.16: .quad 3 ; 0x3 .quad 5 ; 0x5 .quad 9 ; 0x9 .quad 17 ; 0x11 .p2align 3, 0x0 ; @switch.table.sdsAllocSize l_switch.table.sdsAllocSize: .quad 1 ; 0x1 .quad 3 ; 0x3 .quad 5 ; 0x5 .quad 9 ; 0x9 .quad 17 ; 0x11 .p2align 3, 0x0 ; @switch.table.sdssplitargs.17 l_switch.table.sdssplitargs.17: .quad -1 ; 0xffffffffffffffff .quad -3 ; 0xfffffffffffffffd .quad -5 ; 0xfffffffffffffffb .quad -9 ; 0xfffffffffffffff7 .quad -17 ; 0xffffffffffffffef .subsections_via_symbols