lspace_arm64.s 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. // +build !noasm !appengine
  2. // Code generated by asm2asm, DO NOT EDIT.
  3. #include "go_asm.h"
  4. #include "funcdata.h"
  5. #include "textflag.h"
  6. TEXT ·__lspace_entry__(SB), NOSPLIT, $16
  7. NO_LOCAL_POINTERS
  8. WORD $0x100000a0 // adr x0, .+20
  9. MOVD R0, ret(FP)
  10. RET
  11. // .p2align 2, 0x00
  12. _lspace:
  13. WORD $0xd10083ff // sub sp, sp, #32
  14. WORD $0xa900fbfd // stp fp, lr, [sp, #8]
  15. WORD $0xa93ffbfd // stp fp, lr, [sp, #-8]
  16. WORD $0xd10023fd // sub fp, sp, #8
  17. WORD $0xeb02003f // cmp x1, x2
  18. WORD $0x54000061 // b.ne LBB0_2 $12(%rip)
  19. WORD $0x8b020008 // add x8, x0, x2
  20. WORD $0x1400000e // b LBB0_5 $56(%rip)
  21. LBB0_2:
  22. WORD $0x8b010008 // add x8, x0, x1
  23. WORD $0x52800029 // mov w9, #1
  24. WORD $0xd284c00a // mov x10, #9728
  25. WORD $0xf2c0002a // movk x10, #1, lsl #32
  26. LBB0_3:
  27. WORD $0x3862680b // ldrb w11, [x0, x2]
  28. WORD $0x7100817f // cmp w11, #32
  29. WORD $0x9acb212b // lsl x11, x9, x11
  30. WORD $0x8a0a016b // and x11, x11, x10
  31. WORD $0xfa409964 // ccmp x11, #0, #4, ls
  32. WORD $0x540000a0 // b.eq LBB0_6 $20(%rip)
  33. WORD $0x91000442 // add x2, x2, #1
  34. WORD $0xeb02003f // cmp x1, x2
  35. WORD $0x54ffff01 // b.ne LBB0_3 $-32(%rip)
  36. LBB0_5:
  37. WORD $0xcb000102 // sub x2, x8, x0
  38. LBB0_6:
  39. WORD $0xaa0203e0 // mov x0, x2
  40. WORD $0xa940fbfd // ldp fp, lr, [sp, #8]
  41. WORD $0x910083ff // add sp, sp, #32
  42. WORD $0xd65f03c0 // ret
  43. TEXT ·__lspace(SB), NOSPLIT, $0-32
  44. NO_LOCAL_POINTERS
  45. _entry:
  46. MOVD 16(g), R16
  47. SUB $96, RSP, R17
  48. CMP R16, R17
  49. BLS _stack_grow
  50. _lspace:
  51. MOVD sp+0(FP), R0
  52. MOVD nb+8(FP), R1
  53. MOVD off+16(FP), R2
  54. MOVD ·_subr__lspace(SB), R11
  55. WORD $0x1000005e // adr x30, .+8
  56. JMP (R11)
  57. MOVD R0, ret+24(FP)
  58. RET
  59. _stack_grow:
  60. MOVD R30, R3
  61. CALL runtime·morestack_noctxt<>(SB)
  62. JMP _entry