0

ウィキペディアによると: https://en.wikipedia.org/wiki/Red_zone_(コンピューティング)

レッド ゾーンは、(プッシュダウン スタックの場合) 現在のスタック ポインターの下にある関数のスタック フレーム内の固定サイズの領域であり、予約されていて安全に使用できます。これは、命令を保存するスタック ポインターを移動せずに、追加のスタック メモリを割り当てるためにリーフ関数 (他の関数を呼び出さない関数) で最も一般的に使用されます。

最後の文に焦点を当てると、私はまったく同意しません。rsp がフレームの最後であるという事実は、(アセンブリを手動で、または規則の一種として記述したい場合) 作業を簡単にするためのものです。したがって、次のようなことができます: - at&t 構文 -

moveq $5, -200(%rsp)

レッド ゾーンをまったく使用せずに、どのレッド ゾーンが役立つでしょうか (主張されているように通話を保存しません)。

4

0 に答える 0