ここ数日またGHCをいじっている。少し前にAArch64 NCGがマージされたのでその確認という意味が大きい。 前回の記事(3月):GHCに初めてコントリビュートした/最近のGHC動向 同ジャンルの記事(2020年10月):GHCデバッグ日誌 abs関数とNaNの符号ビット 自作ライブラリーfp-ieeeのテストを(Gitから取ってきた)最新のGHCで動かしてみたら引っかかるものがあった。 fp-ieee: IEEE 754-2019 compliant operations どうやら、筆者のコードが「Float/Doubleに関するabs関数が符号ビットを常にクリアする」ことを期待しているのに対し、AArch64 NCGを使った場合はNaNの符号ビットがクリアされないようだ。 数日前に、絶対値関数の実装についての話がツイッターに流れてきた: 話題になった記事では「ゼロの符号を考慮しろ」と