|
≫ |
|
|
|
HP OpenVMS MACRO コンパイラポーティングおよびユーザーズ・ガイド
HP OpenVMS MACRO コンパイラ ポーティングおよびユーザーズ・ガイド
一時的な名前付きリンケージまたは匿名リンケージを確立します。これは,コンパイラによって,字句解析の順で次に処理される CALLS,CALLG,JSB,BSBB, BSBW 命令に対して使用されます。この指示文は,次の CALLS,CALLG,JSB,BSBB, BSBW のいずれかの命令のターゲットが名前でなく,実行時の値 (たとえば CALLS #0, (R6)) である場合に使用します。コンパイラが次の CALLS,CALLG,JSB,BSBB, BSBW のいずれかの命令を見つけると,関連付けられているリンケージを使用して,呼び出しの前後で保存と復元が必要なレジスタを決定します。命令の処理を終えると,一時リンケージはヌルにリセットされます。
形式
.USE_LINKAGE [linkage_name] [,input] [,output] [,scratch] [,preserve]
パラメータ
linkage_name.DEFINE_LINKAGE 指示文で定義済みのリンケージの名前です。
linkage_name を指定すると,
input 句,output 句,scratch 句,
preserve 句は指定できません。
input=<>次の CALLS,CALLG,JSB,BSBB, BSBW のいずれかの命令で呼び出されるルーチンが入力値を受け取るレジスタを示すレジスタ・セットです。
output=<>次の CALLS,CALLG,JSB,BSBB, BSBW のいずれかの命令で呼び出されるルーチンが,その呼び出し元に返す値を代入するレジスタを示すレジスタ・セットです。このレジスタ・セットに含まれるレジスタは,呼び出しの前後で保存されません。
scratch=<>次の CALLS,CALLG,JSB,BSBB, BSBW のいずれかの命令で呼び出されるルーチンの中で使用しているレジスタを示すレジスタ・セットです。このパラメータは,文書化のためにのみあります。
preserve=<>次の CALLS,CALLG,JSB,BSBB, BSBW のいずれかの命令で呼び出されるルーチンが保護するレジスタを示すレジスタ・セットです。このレジスタ・セットに含まれるレジスタは,ルーチンの呼び出しの前後で保存と復元が行われません。この作業は,呼び出されるルーチンで行うためです。
|