Hacker News new | ask | show | jobs
by saagarjha 2142 days ago
Shouldn't the C runtime do that before calling main?
1 comments

It does; the stack pointer starts out aligned, but then the function does a call, and the call instruction adjusts the stack pointer by 8 bytes to push the return address, which would cause it to be misaligned. The push pushes an extra 8 bytes so that the stack pointer is aligned in the callee.