3

現在、私は GNU as を学んでおり、"info as" で多くの有用な情報を見つけています。

".set noat" が MIPS 指定のコードで使用されていることがわかりましたが、"info as" でこのディレクティブを検索すると、ノード "alpha ディレクティブ" でその説明が見つかりましたが、"MIPS Dependent Features" では見つかりませんでした。なんで?マニュアルで何かを見逃しましたか?

ティア

4

2 に答える 2

2

これは MIPS アーキテクチャの有効な構造であり、レジスタがユーザーによって使用され.set at/noatたときに警告を無効/有効にすることにより、Alpha と同様に機能します。$at

よくあることですが、ドキュメントとコードは常に 100% 同期しているわけではありません。したがって、binutils に対してバグを報告してください。さらに良いことに、パッチを提供してください。そうすることで、プロから学ぶことができます (時々起こるように、彼らが本当に忙しい場合を除きます)。

MIPS vs Alpha について: Alpha アーキテクチャは MIPS の影響を大きく受けているようです。

于 2011-10-27T06:00:10.703 に答える
2

GNUasは、8041 マイクロコントローラー ファミリーから最強の Cray まで、さまざまなプロセッサー ターゲット (CPU アーキテクチャー) をサポートしています。マニュアルのマシン依存セクションには、 42 のアーキテクチャがリストされています。

121個の疑似命令のほとんどは、すべてのアーキテクチャーに共通であり、ラベルのセマンティクスとそれらへの参照も同様です。ターゲット間の大きな違いは、特定の CPU 命令、アドレス モード、および命令エンコードです。印象的なasことに、COFF、ELF、a.out、および SOM など、ほとんどのターゲットに対して同じオブジェクト ファイル形式を生成できます。

ほとんどの疑似命令は、CPU の実行ではなくアセンブラーに影響を与えるため、それらが多数のアーキテクチャーに適用されることは当然のことです。

于 2011-10-27T06:23:54.493 に答える