エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
WebAssemblyの多倍長演算ではCarryの扱いが重要 それ以上速くするにはclangの_Extlntに期待
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
WebAssemblyの多倍長演算ではCarryの扱いが重要 それ以上速くするにはclangの_Extlntに期待
Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニア... Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。光成氏は、WebAssemblyにおける多倍長演算の実装について発表しました。全2回。後半は、WebAssemblyでの実装とclangの「_Extlnt」機能について。前回はこちら。 WebAssemblyではどう計算するか 光成滋生氏(以下、光成):本題に戻ってWebAssemblyなのですが、レジスタは32bitと64bitのレジスタをもっています。加算は64bit+64bitで、結果は64bitになります。Carryはもっていません。乗算は32bit×32bitの64bitです。128bitに出力する命令はありません。素直なCでできる範囲しかありません。詳しい資料はここに載っています。 Carry演算をエミュレートしないといけません。どうやってやるかですが、や