スタック・ポインター、フレーム・ポインター、またはその他の固定の役割を除き、指定されたレジスターのリストがコンパイル中に使用できないことを示します。このオプションは、グローバル・レジスター変数または手書きのアセンブラー・コードを使用する他のモジュールと連動させる必要があるモジュールで使用してください。
.-:-------------. V | >>- -q--reserved_reg--=----register_list-+---------------------><
ターゲット・プラットフォームで有効なレジスター名を使用する必要があります。そうでないと、コンパイラーが警告メッセージを発行します。重複するレジスター名は、そのまま無視されます。
-qreserved_reg は累積です。例えば、 -qreserved_reg=r14 と -qreserved_reg=r15 を指定することは、 -qreserved_reg=r14:r15 を指定することと同等です。有効なレジスター名は以下の通りです。
xlc myprogram.c -qreserved_reg=r3:r4
r3 と r4 は、関数にパラメーターを渡して戻り値を受け取るという固定された役割以外では、生成されたコードで使用できないことを示しています。
関連情報