私はブランチ遅延スロットで遊んでいました。スピムでそれを試してみました。私の驚きのためにmipsブランチ遅延スロットは連続ブランチを伝播しますか?
j some
j a
j b
j c
j d
ori $9, $0, 13
some:
a:
b:
c:
d:
はそれが変わっ$ 9 13 だから私の質問は、遅延スロットが伝播することができているか、これはスピムのもので、実際のMIPS32プロセッサ上では発生しませんか? これが予想される動作であれば、誰かがそこで起こっていることについて少し啓発を与えることができますか?
私はそのようなことをするつもりはないと知っています。私はそれをやりません。私は遅延スロットについてもっと理解しようとしています。つまり、ブランチ後の次の命令は、ブランチがトリガーされても実行準備が整っていることを理解しています。しかし、私はいくつかの命令が実行されることはありません。また、各支店に1サイクルかかるのですか? ちょうど私の心に来たことは、ルールが '各支店ごとに、次の命令が実行される'場合は、それが伝播することを完全に意味するということです。 お返事いただき、ありがとうございました。 –
はい、ブランチごとに1つのサイクルがわかりますが、無条件に「some」にジャンプし、最初の遅延スロットで「a」へのジャンプを無視することは、おそらく完全に正当なことでしょう。 –
誰かがそれに追加するものがあればちょっと待って、それに答えてフラグを立てます。ありがとうございました。 –