mpfr_expr_cli チュートリアル
このチュートリアルでは、コマンドラインから MPFR のデータファイルに対して bin_float を検査する方法を説明します。ランナーは floating-conformance --backend mpfr として呼び出します。以下では mpfr でこのコマンドを略記します。
クイックスタート
just conformance build binary
_build/conformance/mpfr/native/release/build/mpfr-conformance.exe \
--backend mpfr testdata/bin_float/mpfr-4.2.2-elementary.txt
MPFR elementary summary
cases: …
passed cases: …
failed cases: 0
日常的なタスク
各形式を実行する
ランナーはちょうど 1 つのファイルを読み込み、その内容から形式を判別します。
mpfr testdata/bin_float/mpfr-4.2.2-elementary.txt # contains "mpfr-elementary-v1"
mpfr pow_si.txt # header contains "input_coefficient_hex"
mpfr path/to/mpfr/tests/data/sqrt # anything else: sqrt data_check
スクリプト向けの JSON
mpfr --json testdata/bin_float/mpfr-4.2.2-elementary.txt
corpus、totalCases、passedCases、failedCases、failedIds を持つオブジェクトを 1 つ出力します。
さらに進んで
just conformance run binaryは、固定された MPFR の平方根データと初等関数マトリクスを、TestFloat マトリクスと合わせて実行します。- 新しい初等関数データは
tools/generate_mpfr_elementary_oracle.cによって生成されます。ランナーが形式を検出できるよう、mpfr-elementary-v1マーカー行を残してください。 - 行の形式と合格規則については mpfr_expr チュートリアル で説明しています。
よくある落とし穴
- 1 回の呼び出しにつき 1 ファイル。 余分なパス、パスの欠落、シャードオプションはいずれも使用法の行を表示して
2で終了します。 - 形式の検出はテキストベースです。 コメント中にたまたま
input_coefficient_hexを含む平方根ファイルは、べき乗データとして解析されます。