__int128_t
GCC が提供するような 128 ビットの整数データ型はエミュレートされているため、速度が遅いと聞いたことが あります。ただし、さまざまな SSE 命令セット (SSE、SSE2、...、AVX) が 128 ビット レジスタ用の少なくともいくつかの命令を導入したことは理解しています。私は SSE やアセンブリ / マシン コードについてあまり知らないので、__int128_t
最新バージョンの GCC を使用して演算がエミュレートされているかどうかを誰かが説明してくれるかどうか疑問に思っていました。
__int128_t
私がこれを尋ねている理由は、どの SSE 命令が利用されているかに応じて、GCC の異なるバージョン間でパフォーマンスに大きな違いを期待することが理にかなっているのかどうか疑問に思っているからです。
では、__int128_t
算術演算のどの部分が GCC によってエミュレートされ、SSE 命令 (もしあれば) によってどの部分が実装されているのでしょうか?