モノトーンの伝説日記

Apex Legends, Splatoon, Programming, and so on...

<mini> intrinsic 命令から生成された AMD64 アセンブリ コードを読む【小ネタ】

 Hi, everyone!

 自分は C, C++ で書いたコードがどのようにコンパイルされているかちょいちょい調べることがあります。ベクタライズ化 (SIMD 化) されていないコードでも,実は内部では 128-bit SSE 命令になっていることも珍しくありません。しかし自動ベクタライズ化は確かに正しいコードを吐き出すのですが,アライメント制約をコンパイルに投げることができないので,どのようなアライメントでもいいようなコードを吐き出すのも事実です。

 本当は C と C+intrinsic から生成されたコードを比較仕様と思ったのですが,個人的に書くのがつらいので,intrinsic 版だけここで書こうかと思います。

続きを読む