Xbyak

assemberのことをググってたら面白いものを発見。
http://homepage1.nifty.com/herumi/soft/xbyak.html

実行時にマシン語を生成するクラスライブラリらしい。
ひとつめのサンプルをやってみた(gcc-4.3 gentoo)。
http://labs.cybozu.co.jp/blog/mitsunari/xbyak/

main.cpp:9: error: call of overloaded ‘call(int)’ is ambiguous
/usr/local/include/xbyak/xbyak.h:1181: note: candidates are: void Xbyak::CodeGenerator::call(const char*) <near match>
/usr/local/include/xbyak/xbyak.h:1185: note:                 void Xbyak::CodeGenerator::call(const void*) <near match>

と怒られたので

call((void*)puts); 

としたら通った。

これなら、gccとvcで同じアセンブラが書けるのでよいのではないか。
inlineアセンブラとはちっと違うらしいが
むしろ、おもしろそうなのでやってみる。