タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

GCCとインラインアセンブラに関するohnishiakiraのブックマーク (1)

  • GCC拡張インラインアセンブラ構文 - kikairoya’s diary

    Twitterでうっかり"GCCインラインアセンブラ拡張構文の解説でもするか"と発言したら、二人くらいに期待ageされたので、とりあえずCPUIDを例にインラインアセンブラの解説をします。 環境はi486(x86,IA-32)上のGCCが動く環境を想定しています。80386はCPUIDが無いのでごめんなさい。 x86_64(x64,AMD64)の人もそのまま遊べます。MIPSやPPC動かしている人は回れ右。今回はOSは関係ありません。 コンパイラは当然GCC(gcc/g++)です。3.2以降または4.0以降で動くと思います。MSVCやdmdの人は回れ右。最適化は特記の無い限りしてもかまいません。 単純な例から。 とりあえずcpuid命令を発行してみます。 int main() { asm volatile ( "xor %eax, %eax\n\t" "cpuid" ); return 0

    GCC拡張インラインアセンブラ構文 - kikairoya’s diary
  • 1