CPU ID 定義
アセンブリー・プロセス中に、アセンブラーは、すべての命令を含む最小の命令セットを判別し、命令セットを示す CPU ID 値を与えます。
アセンブリー・プロセス中に、アセンブラーは、(アーキテクチャーまたはプロセッサー・インプリメンテーションで定義されたいくつかの完全な命令セットのリストから) どの命令セットが、プログラムで使用されるすべての命令を含む最も小さい命令セットであるかを判別します。 プログラムには、この命令セットを示す CPU ID 値が与えられます。 したがって、CPU ID は、オブジェクト・コードを実行できるターゲット環境を示します。 プログラムの CPU ID 値は、アセンブラーによって生成される XCOFF オブジェクト・ファイルに含まれるアセンブラー出力値です。
CPU ID には、以下の値を指定できます。
| 値 | 説明 |
|---|---|
| com | このプログラムで使用されるすべての命令は、 PowerPC® と POWER ® ファミリーのアーキテクチャーの共通部分にあります。 ( 通信 命令セットは最小の命令セットです。) |
| ppc | プログラムで使用されるすべての命令は、32 ビット・モードの PowerPC® アーキテクチャーにありますが、プログラムは CPU ID 値 comの条件を満たしていません。 ( PpC 命令セットは、 通信 命令セットのスーパーセットです。) |
| pwr | プログラムで使用されるすべての命令は POWER ® ファミリー・アーキテクチャー、POWER ® ファミリー・インプリメンテーションに含まれていますが、プログラムは CPU ID 値 通信の条件を満たしていません。 ( パスワード 命令セットは、 通信 命令セットのスーパーセットです。) |
| pwr2 | プログラムで使用されるすべての命令は POWER ® ファミリー・アーキテクチャーの POWER2™ 実装に含まれていますが、プログラムは CPU ID 値 com、 ppc、または pwrの条件を満たしていません。 ( pwr2 命令セットは、 パスワード 命令セットのスーパーセットです。) |
| any | プログラムには、有効なアーキテクチャーまたはインプリメンテーションからの命令が混在しているか、またはインプリメンテーション固有の instructions.The プログラムは、CPU ID 値 com、 ppc、 pwr、または pwr2の条件を満たしていません。 ( 任意 命令セットは最大の命令セットです。) |
アセンブラー出力値の CPU ID は、アセンブリー・モードと同じではありません。 アセンブリー・モード ( として コマンドの -m (M) フラグ、およびプログラム内の . マシン 疑似命令を使用して決定される) は、アセンブラーがエラーまたは警告なしで受け入れる命令を決定します。 CPU ID は、実際に使用される命令を示す出力値です。
出力 XCOFF ファイルでは、CPU ID は以下の下位バイトに保管されます。n_typeC_FILE ストレージ・クラスを持つシンボル・テーブル・エントリー内のフィールド。 以下のリストは、下位バイト値とそれに対応する CPU ID を示しています。
| 低位バイト | CPU ID |
|---|---|
| 0 | 定義された値ではありません。 CPU-ID フィールドの定義の前に、無効な値またはオブジェクトがアセンブルされました。 |
| 1 | ppc |
| ※2 | ppc64 |
| 3 | com |
| 4 | pwr |
| 5 | any |
| 6 | 601 |
| 7 | 603 |
| 8 | 604 |
| 10 | べき |
| 16 | 620 |
| 17 | A35 |
| 18 | pwr5 |
| 19 | ppc970 または 970 |
| 20 | pwr6 |
| 21 | VEC |
| 22 | pwr5x |
| 23 | pwr6e |
| 24 | pwr7 |
| 25 | pwr8 |
| 26 | pwr9 |
| 27 | pwr10 |
| 224 | pwr2 または pwrx |