24531904_j

24531904_j 24531904_j

16.02.2013 Aufrufe

表 3-1. 擬似コード関数 ( 続き ) check_target_register(r1) r1 がフレーム範囲外のスタックされたレジスタ (CFM によって定義 ) をターゲット にすると、無効操作フォルトが発生し、この関数は返らない。 check_target_register_sof(r1, newsof) r1 がフレーム範囲外のスタックされたレジスタ (newsof パラメータによって定義 ) をターゲットにすると、無効操作フォルトが発生し、この関数は返らない。 concatenate2(x1, x2) 2 つの引数の下位 32 ビットを連結し、64 ビットの結果を返す。 concatenate4(x1, x2, x3, x4) 4 つの引数の下位 16 ビットを連結し、64 ビットの結果を返す。 concatenate8(x1, x2, x3, x4, x5, x6, x7, x8) 8 つの引数の下位 8 ビットを連結し、64 ビットの結果を返す。 data_serialize() 副次的作用を持つすべての先行するレジスタの更新が、後続のプログラム実行およ びデータ・メモリ参照が実行される前に、検出されるようにする。 deliver_unmasked_pending_interrupt() このプロセッサ固有の関数は、未処理のマスクされていない外部割り込みがあるか どうかをチェックし、このような割り込みがある場合は、外部割り込みベクタに制 御を渡す。 execute_hint(hint) hint によって指定されたヒントを実行する。 fadd(fp_dp, fr2) 無限精度の積に浮動小数点レジスタの値を加え、丸めの準備ができた無限精度の和 を返す。 fcmp_exception_fault_check(f2, f3, frel, fcmp 命令のためにすべての浮動小数点フォルト条件をチェックする。 sf, *tmp_fp_env) fcvt_fx_exception_fault_check (fr2, signed_form, trunc_form, sf *tmp_fp_env) fma_exception_fault_check (f2, f3, f4, pc, sf, *tmp_fp_env) fminmax_exception_fault_check (f2, f3, sf, *tmp_fp_env) fms_fnma_exception_fault_check (f2, f3, f4, pc, sf, *tmp_fp_env) 関数 操作 fcvt.fx、fcvt.fxu、fcvt.fx.trunc、fcvt.fxu.trunc 命令のためにすべて の浮動小数点フォルト条件をチェックする。NaN は伝播する。 fma 命令のためにすべての浮動小数点フォルト条件をチェックする。NaN および特 殊な IEEE 結果は伝播する。 famax、famin、fmax、および fmin 命令のためにすべての浮動小数点フォルト条 件をチェックする。 fms および fnma 命令のためにすべての浮動小数点フォルト条件をチェックする。 NaN および特殊な IEEE 結果は伝播する。 fmul(fr3, fr4) 2 つの浮動小数点レジスタ値の無限精度の乗算を実行する。 followed_by_stop() 現在の命令の後にストップが続いている場合には TRUE を返す。それ以外の場合は FALSE を返す。 fp_check_target_register(f1) 指定された浮動小数点レジスタ識別子が 0 または 1 であれば、この関数は無効操作 フォルトを発生させる。 fp_decode_fault(tmp_fp_env) ISR.code のための浮動小数点例外フォルト・コード値を返す。 fp_decode_traps(tmp_fp_env) ISR.code のための浮動小数点トラップ・コード値を返す。 fp_is_nan_or_inf(freg) 浮動小数点例外フォルト・チェック関数が、IEEE フォルトがディスエーブルにさ れたデフォルトの結果または伝播された NaN を返した場合に、true を返す。 fp_equal(fr1, fr2) IEEE 標準の等値関係テスト。 fp_ieee_recip(num, den) 特殊なオペランドのセットに対する真の商、またはソフトウェア除算アルゴリズム で使用される除数の逆数の近似値を返す。 fp_ieee_recip_sqrt(root) 特殊なオペランドに対する真の平方根の結果、またはソフトウェア平方根アルゴリ ズムで使用される平方根の逆数の近似値を返す。 fp_is_nan(freg) 浮動小数点レジスタが NaN を含んでいる場合に true を返す。 fp_is_natval(freg) 浮動小数点レジスタが NaTVal を含んでいる場合に true を返す。 fp_is_normal(freg) 浮動小数点レジスタがノーマル数を含んでいる場合に true を返す。 fp_is_pos_inf(freg) 浮動小数点レジスタが正の無限大を含んでいる場合に true を返す。 3:252 第 3 巻 : 擬似コード関数

表 3-1. 擬似コード関数 ( 続き ) fp_is_qnan(freg) 浮動小数点レジスタがクワイエット型 NaN を含んでいる場合に true を返す。 fp_is_snan(freg) 浮動小数点レジスタがシグナル型 NaN を含んでいる場合に true を返す。 fp_is_unorm(freg) 浮動小数点レジスタがアンノーマル数を含んでいる場合に true を返す。 fp_is_unsupported(freg) 浮動小数点レジスタがサポートされていない形式を含んでいる場合に true を返す。 fp_less_than(fr1, fr2) IEEE 標準の「未満」関係テスト。 fp_lesser_or_equal(fr1, fr2) IEEE 標準の「以下」関係テスト。 fp_normalize(fr1) アンノーマルの fp 値を正規化する。この関数は、レジスタ・ファイルで表現でき ないアンノーマル数値をすべてゼロにフラッシュする。 fp_raise_fault(tmp_fp_env) ローカル命令状態をチェックして、割り込みの発生を必要とするフォルト条件が存 在するかどうかを調べる。 fp_raise_traps(tmp_fp_env) ローカル命令状態をチェックして、割り込みの発生を必要とするトラップ条件が存 在するかどうかを調べる。 fp_reg_bank_conflict(f1, f2) 2 つの指定された FR が同じバンクにある場合に true を返す。 fp_reg_disabled(f1, f2, f3, f4) ディスエーブルにされている浮動小数点レジスタ・フォルトが存在するかどうかを チェックする。 fp_reg_read(freg) FR を読み込み、標準の拡張倍精度のデノーマル数 ( および擬似デノーマル数 ) に、 真の数学的指数を与える。これ以外のクラスのオペランドは変更されない。 fp_unordered(fr1, fr2) IEEE 標準の順序付けなしの関係。 fp_fr_to_mem_format(freg, size) レジスタ形式の浮動小数点値を、浮動小数点メモリ形式に変換する。レジスタ内の 浮動小数点値が、size パラメータに対応する正しい精度に事前に丸められている 前提がある。 fpcmp_exception_fault_check (f2, f3, frel, sf, *tmp_fp_env) fpcmp 命令について、すべての浮動小数点フォルト条件をチェックする。 fpcvt_exception_fault_check (f2, signed_form, trunc_form, sf, *tmp_fp_env) 関数 操作 fpma_exception_fault_check (f2, f3, f4, sf, *tmp_fp_env) fpminmax_exception_fault_check (f2, f3, sf, *tmp_fp_env) fpms_fpnma_exception_fault _check(f2, f3, f4, sf, *tmp_fp_env) fprcpa_exception_fault_check (f2, f3, sf, *tmp_fp_env, *limits_check) fprsqrta_exception_fault_check (f3, sf, *tmp_fp_env, *limits_check) frcpa_exception_fault_check (f2, f3, sf, *tmp_fp_env) frsqrta_exception_fault_check (f3, sf, *tmp_fp_env) fpcvt.fx、fpcvt.fxu、fpcvt.fx.trunc、fpcvt.fxu.trunc 命令について、 すべての浮動小数点フォルト条件をチェックする。NaN は伝播する。 fpma 命令について、すべての浮動小数点フォルト条件をチェックする。NaN と特 殊な IEEE 結果は伝播する。 fpmin、fpmax、fpamin、fpamax 命令について、すべての浮動小数点フォルト条 件をチェックする。 fpms および fpnma 命令について、すべての浮動小数点フォルト条件をチェックす る。NaN と特殊な IEEE 結果は伝播する。 fprcpa 命令について、すべての浮動小数点フォルト条件をチェックする。NaN と 特殊な IEEE 結果は伝播する。オペランド制限違反も表示する。 fprsqrta 命令について、すべての浮動小数点フォルト条件をチェックする。NaN と特殊な IEEE 結果は伝播する。オペランド制限違反も表示する。 frcpa 命令のためにすべての浮動小数点フォルト条件をチェックする。NaN および 特殊な IEEE 結果は伝播する。 frsqrta 命令のためにすべての浮動小数点フォルト条件をチェックする。NaN およ び特殊な IEEE 結果は伝播する。 ignored_field_mask(regclass, reg, value) 指定されたレジスタとレジスタ・タイプの無視ビットに対応するビットを 0 にクリ アして値を返すブール関数。 impl_itir_cwi_mask() 渡された値をそのまま返すか、ビット位置 {63:32} と {1:0} ( またはそのいずれか一 方 ) をゼロでマスクして返すプロセッサ固有の関数。 第 3 巻 : 擬似コード関数 3:253

表 3-1. 擬似コード関数 ( 続き )<br />

fp_is_qnan(freg) 浮動小数点レジスタがクワイエット型 NaN を含んでいる場合に true を返す。<br />

fp_is_snan(freg) 浮動小数点レジスタがシグナル型 NaN を含んでいる場合に true を返す。<br />

fp_is_unorm(freg) 浮動小数点レジスタがアンノーマル数を含んでいる場合に true を返す。<br />

fp_is_unsupported(freg) 浮動小数点レジスタがサポートされていない形式を含んでいる場合に true を返す。<br />

fp_less_than(fr1, fr2) IEEE 標準の「未満」関係テスト。<br />

fp_lesser_or_equal(fr1, fr2) IEEE 標準の「以下」関係テスト。<br />

fp_normalize(fr1) アンノーマルの fp 値を正規化する。この関数は、レジスタ・ファイルで表現でき<br />

ないアンノーマル数値をすべてゼロにフラッシュする。<br />

fp_raise_fault(tmp_fp_env) ローカル命令状態をチェックして、割り込みの発生を必要とするフォルト条件が存<br />

在するかどうかを調べる。<br />

fp_raise_traps(tmp_fp_env) ローカル命令状態をチェックして、割り込みの発生を必要とするトラップ条件が存<br />

在するかどうかを調べる。<br />

fp_reg_bank_conflict(f1, f2) 2 つの指定された FR が同じバンクにある場合に true を返す。<br />

fp_reg_disabled(f1, f2, f3, f4) ディスエーブルにされている浮動小数点レジスタ・フォルトが存在するかどうかを<br />

チェックする。<br />

fp_reg_read(freg) FR を読み込み、標準の拡張倍精度のデノーマル数 ( および擬似デノーマル数 ) に、<br />

真の数学的指数を与える。これ以外のクラスのオペランドは変更されない。<br />

fp_unordered(fr1, fr2) IEEE 標準の順序付けなしの関係。<br />

fp_fr_to_mem_format(freg, size) レジスタ形式の浮動小数点値を、浮動小数点メモリ形式に変換する。レジスタ内の<br />

浮動小数点値が、size パラメータに対応する正しい精度に事前に丸められている<br />

前提がある。<br />

fpcmp_exception_fault_check<br />

(f2, f3, frel, sf, *tmp_fp_env)<br />

fpcmp 命令について、すべての浮動小数点フォルト条件をチェックする。<br />

fpcvt_exception_fault_check<br />

(f2, signed_form, trunc_form, sf,<br />

*tmp_fp_env)<br />

関数 操作<br />

fpma_exception_fault_check<br />

(f2, f3, f4, sf, *tmp_fp_env)<br />

fpminmax_exception_fault_check<br />

(f2, f3, sf, *tmp_fp_env)<br />

fpms_fpnma_exception_fault<br />

_check(f2, f3, f4, sf, *tmp_fp_env)<br />

fprcpa_exception_fault_check<br />

(f2, f3, sf, *tmp_fp_env, *limits_check)<br />

fprsqrta_exception_fault_check<br />

(f3, sf, *tmp_fp_env, *limits_check)<br />

frcpa_exception_fault_check<br />

(f2, f3, sf, *tmp_fp_env)<br />

frsqrta_exception_fault_check<br />

(f3, sf, *tmp_fp_env)<br />

fpcvt.fx、fpcvt.fxu、fpcvt.fx.trunc、fpcvt.fxu.trunc 命令について、<br />

すべての浮動小数点フォルト条件をチェックする。NaN は伝播する。<br />

fpma 命令について、すべての浮動小数点フォルト条件をチェックする。NaN と特<br />

殊な IEEE 結果は伝播する。<br />

fpmin、fpmax、fpamin、fpamax 命令について、すべての浮動小数点フォルト条<br />

件をチェックする。<br />

fpms および fpnma 命令について、すべての浮動小数点フォルト条件をチェックす<br />

る。NaN と特殊な IEEE 結果は伝播する。<br />

fprcpa 命令について、すべての浮動小数点フォルト条件をチェックする。NaN と<br />

特殊な IEEE 結果は伝播する。オペランド制限違反も表示する。<br />

fprsqrta 命令について、すべての浮動小数点フォルト条件をチェックする。NaN<br />

と特殊な IEEE 結果は伝播する。オペランド制限違反も表示する。<br />

frcpa 命令のためにすべての浮動小数点フォルト条件をチェックする。NaN および<br />

特殊な IEEE 結果は伝播する。<br />

frsqrta 命令のためにすべての浮動小数点フォルト条件をチェックする。NaN およ<br />

び特殊な IEEE 結果は伝播する。<br />

ignored_field_mask(regclass, reg, value) 指定されたレジスタとレジスタ・タイプの無視ビットに対応するビットを 0 にクリ<br />

アして値を返すブール関数。<br />

impl_itir_cwi_mask() 渡された値をそのまま返すか、ビット位置 {63:32} と {1:0} ( またはそのいずれか一<br />

方 ) をゼロでマスクして返すプロセッサ固有の関数。<br />

第 3 巻 : 擬似コード関数 3:253

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!