Chiharu の日記

絵描き C/C++ プログラマーの日記です。

x86 から x64 へ 〜利点いろいろ

x86 と比べて x64 になって良かったなぁと思う点など。

  • 汎用レジスタ数が 8 個から 16 個に増えた
    • 関数の引数がレジスタ渡しがデフォルトに(冒頭の数パラメータのみ
    • レジスタのスタック退避が激減
  • SSE2 を確実に使用可能
    • 浮動小数演算に x87 FPU でなく SSE/SSE2 がデフォルトに
    • SSE2 専用ルーチンを気軽に書けるように
  • メモリ空間が増えた
    • 4GB の壁を越えた(今のところプログラミング上の恩恵は実感していませんが、グラフィックス系ソフトで恩恵バリバリみたい

あと、知らなかったのですが意外な利点があって、setjmp/longjump で C++ のデストラクタが呼ばれるようになったようです。これは画期的。というか x86 にさかのぼって適用して欲しいです。