出典: http://en.wikipedia.org/wiki/X86_calling_conventions
push c
push b
push a
call function_name
add esp, 12 ;Stack clearing
mov x, eax
呼び出された関数がスタックからパラメーターをポップしてスタックポインターを復元する必要があるため、スタックをクリアするために明示的に ESP に 12 を追加する必要があるのはなぜですか?
別の質問:
理論的には、呼び出し先がクリーンアップ権を処理して変数パラメーター関数を実装することは可能でしょうか (たとえば、スタック上の引数の数をレジスターに渡す場合)。