Slide 39
Slide 39 text
Trampoline for arm64
_aspects_forwarding_trampoline:
sub x12, lr, #0x8 // x12 = lr - 8
sub x12, x12, #0x4000 // x12 = x12 - 16384
mov lr, x13 // restore the link register
ldr x1, [x12] // load x1, which holds SEL _cmd, from *(x12)
ldr x12, msgSend // address of objc_msgSend at start of data page
br x12 // branch directly to x12 aka objc_msgSend
# We repeat this a lot...
mov x13, lr
bl _aspects_forwarding_trampoline;