2010-12-01から1ヶ月間の記事一覧
register __m128* tmp asm ("xmm0"); asm volatile ( "pxor %[tmp], %[tmp]" : [tmp] "+x" (tmp) ); なんだかまわりくどいですね…。このコードは、 pxor %xmm0, %xmm0 に展開されます。
IntelのOptimization Manualの2.2.5.1 Efficient Handling of Alignment Hazardsによると、Nehalem系CPUからMOVDQUの性能が向上したとあるので、実験してみました。4パターンのmovを実行して速度差を見ます。alignedはアクセス先のアドレスが16バイトアライ…
最初に このエントリは C++ Advent Calendar jp 2010 : ATND 16日目の記事です. Boost.Protoぺろぺろ Boost.ProtoとはBoostに含まれているExpression Template(ET)のためのライブラリです.Xpressiveや,Spirit,Phoenix v3のベースとなっています.このエ…