*参照元 [#vdcb88a1] #backlinks *説明 [#u47dc58b] -パス: [[linux-2.6.33/include/linux/compiler-gcc4.h]] -実行されないコードであることを示すマーク。 --GCC4 のビルトイン関数を用いて、 実行されないコードであることをコンパイラに伝える。 --gcc(Debian 4.3.2-1.1) x86 では、 無限ループに変換されるようです。 **引数 [#r21bd3c7] -なし **返り値 [#hd6dd634] -なし **参考 [#y86c38dc] *実装 [#cdb70e34] #if __GNUC_MINOR__ >= 5 -gcc-4.5 以降で使用可能である。 -gcc マイナーバージョンが 5 以上である。 --このヘッダは gcc-4.x 用であるので、 つまるところ「gcc-4.5 以上である」という意味になる。 /* * Mark a position in code as unreachable. This can be used to * suppress control flow warnings after asm blocks that transfer * control elsewhere. * * Early snapshots of gcc 4.5 don't support this and we can't detect * this in the preprocessor, but we can live with this because they're * unreleased. Really, we need to have autoconf for the kernel. */ #define unreachable() __builtin_unreachable() -コメントの通り「実行されないコードである」ことをコンパイラに伝えて、 不要な警告を抑制する。 #endif *コメント [#c31e1da6]