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

adrp

The ARM64 instruction that finds the 4 KB block of memory a global variable lives in, relative to the current instruction; an add then supplies the last 12 bits.

adrp xd, symbol sets xd to the 4 KB-aligned address containing symbol, computed relative to the program counter's own 4 KB-aligned address (range plus or minus 4 GB); add xd, xd, :lo12:symbol then adds the low 12 bits.

Examples

  • adrp x0, table puts the address of table's 4 KB block in x0; add x0, x0, :lo12:table adds the low 12 bits.

Read the full section →