3月
05
Visual C++ 2015 Update 2 以降のリンカにはスタティックライブラリの中身を(参照されていなくても)全て取り込む /WHOLEARCHIVE オプションがありますが、これをインクリメンタルリンクを行う /INCREMENTAL オプション(こっちはずっと前からある)と併用するとスタティックライブラリの中身を更新してもリンクされない(スタティックライブラリの中の新しいオブジェクトと入れ替わらない)という現象が発生するようです。
他にも気づいた人はいるようで、フォーラムに投稿した後にバグレポートは出ているようです。
デバッグビルドだとインクリメンタルリンクがオンになるんですが、オフにすっかなぁ…(オフならちゃんと期待したような動作になる)
2月
24
2月
23
GCC のインラインアセンブラでは出力 (output operands) リスト、入力 (input operands) リストの他に、アセンブラブロックの中でどのレジスタが破壊されるか(つまり、どのレジスタをコンパイラ側で復元しなければいけないか)を指定する 破壊 (clobber) リストを指定することができます。
Read the rest of this entry
2月
22
2月
21
その2の続き
Intel 記法と Input Operand (の一部の制約)は併用できないわけですが、手持ちのソースを AT&T 記法に変換するのもチョー大変なので別の方法を。
Read the rest of this entry
2月
20
2月
19
2月
14