In recent versions of Windows, for example (win 8.1 x64) and programs compiled with the VC ++ 'call' instruction, are still present. Not a quick and best way to store a return address in registers, just like most arguments, rather than using a stack?
What I mean:
Functions:
func: ; do something jmp r8
Instance:
lea r8, [rip + tmp_1 - tmp_0] ; or rip + 'jmp func' size tmp_0: jmp func tmp_1: ; rest of code
x86 :1. , , OoO.2. , . , , , MIPS. MIPS RISC , , , call/return /, .x86 - , - , , . , , . , .: .
call/return