16

gcc docsの下で128 ビット整数は次のとおりです。

拡張機能として、整数スカラー型__int128は、128 ビットを保持するのに十分な幅の整数モードを持つターゲットに対してサポートされています。__int128符号付き 128ビット整数、または符号なし 128 ビット整数を単に記述しunsigned __int128ます。

__int128GCC では、128 ビット幅未満の long long integer を持つターゲットのタイプの整数定数を表現するためのサポートはありません。

このタイプのサポートを追加した gcc のバージョンは何か、またはその存在をテストするために直接使用できるマクロがあるかどうか疑問に思っていました。

4

2 に答える 2

13

最初のバージョンについてはわかりませんが、__SIZEOF_INT128__マクロをテストできます-これは(通常)16定義されている場合です。

于 2014-02-19T16:54:04.373 に答える
7

ソースを入手して:

git log --reverse --grep='__int128'

コミットメッセージで単語の最初の出現を確認します。

これにより、https ://github.com/gcc-mirror/gcc/commit/6388cfe24f7ecbdc2ba2d4c80638ea6c95ba07c2 に移動します。

Add __int128 keyword.

次に、そのコミットを含むすべてのタグを次のようにリストします。

git tag --contains 6388cfe24f7ecbdc2ba2d4c80638ea6c95ba07c2

最も早いものは次のとおりです。

gcc-4_6_0-release

TODO:__int128_t私が理解できなかった以前のリファレンスもあります。__int128とはどう違い_int128_tますか?

于 2015-05-19T15:48:00.973 に答える