What happens at ARM64 function call level when Objective-C method is invoked?

Updated May 17, 2026

Short answer

Objective-C method calls are compiled into ARM64 registers-based function calls via objc_msgSend.

Deep explanation

On ARM64, objc_msgSend is a highly optimized assembly function. 'self' is passed in x0, selector in x1, and arguments in subsequent registers. The function performs cache lookup and jumps directly to IMP using branch instructions. This avoids stack overhead in hot paths.

Unlock with a Pro subscription to view this section.

View pricing

Real-world example

No real-world example available yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

Common mistakes

No common mistakes listed yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

Follow-up questions

No follow-up questions available yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

More Objective-C interview questions

View all →