Skip to content
Free public beta until December 4, 2026: every course is open, no card needed. After that, the first chapter of each course stays free and full access is a one-time $39 ($19 for up to 100 founding members chosen for helpful feedback). Your progress is kept. How the beta works

store pair

ARM64's stp and ldp, which store or load two registers at once at neighbouring addresses - ARM64's way to save and restore registers on the stack.

stp xa, xb, [sp, #-16]! stores two 64-bit registers at sp - 16 and sp - 8 and writes sp back; ldp xa, xb, [sp], #16 reloads them and pops; ARM64 has no push or pop instruction.

Examples

  • ARM64 stp x29, x30, [sp, #-16]! saves the frame pointer and the link register in one instruction.

Read the full section →