Presently we preserve the return address in the CallFrameHeader in the RegisterFile, since we don't allow any recursion on the machine stack. We should fairly trivially be able to avoid the extra push/pop of the return address in leaf functions.