According to the data sheet for the ATmega164P/324P/644P the PC is 15/16-bits and but calls and interrupts decrement the stack pointer by three bytes. Why this inconsistency and waste of stack space? Or is it a simple error in the data sheet.
This is more than just simple curiosity. In one application I need to walk the stack for some information so it is important that I get the numbers right (and I don't have access to this particular processor (yet).