avr32-gccの定義済みマクロ

Windows環境でgccの定義済みマクロ一覧を取得する方法。
コマンドプロンプトから以下のコマンドを実行する。

"%AVR32_HOME%\bin\avr32-gcc" -dM -E -xc - < nul

ファイルに出力したいなら、「> 出力ファイル・パス」を追加すればよい。
デバイス依存の値が定義されているため、各デバイス毎の正確な値を知るには更にオプションを追加する必要がある。次はAT32UC3B0256の場合である。

"%AVR32_HOME%\bin\avr32-gcc" -march=ucr1 -mpart=uc3b0256 -dM -E -xc - < nul

デバイス毎の-marchと-mpartの値は、AVR32 StudioでビルドしたときのConsole出力を参考にすればよい。
AT32UC3B0256の定義済みマクロ一覧は以下の通り(avr32-gcc (atmel.1.0.1-(mingw32_special)) 4.3.2の場合)。

マクロ名
__DBL_MIN_EXP__ (-1021)
__FLT_MIN__ 1.17549435e-38F
__DEC64_DEN__ 0.000000000000001E-383DD
__CHAR_BIT__ 8
__WCHAR_MAX__ 2147483647
__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1
__DBL_DENORM_MIN__ 4.9406564584124654e-324
__FLT_EVAL_METHOD__ 0
__DBL_MIN_10_EXP__ (-307)
__FINITE_MATH_ONLY__ 0
__GNUC_PATCHLEVEL__ 2
__DEC64_MAX_EXP__ 384
__SHRT_MAX__ 32767
__LDBL_MAX__ 1.7976931348623157e+308L
__UINTMAX_TYPE__ long long unsigned int
__DEC32_EPSILON__ 1E-6DF
__CHAR_UNSIGNED__ 1
__LDBL_MAX_EXP__ 1024
__SCHAR_MAX__ 127
__DBL_DIG__ 15
__SIZEOF_INT__ 4
__SIZEOF_POINTER__ 4
__USER_LABEL_PREFIX__  
__STDC_HOSTED__ 1
__LDBL_HAS_INFINITY__ 1
__FLT_EPSILON__ 1.19209290e-7F
__LDBL_MIN__ 2.2250738585072014e-308L
__DEC32_MAX__ 9.999999E96DF
__SIZEOF_LONG__ 4
__AVR32_HAS_RMW__ 1
__DECIMAL_DIG__ 17
__LDBL_HAS_QUIET_NAN__ 1
__GNUC__ 4
__FLT_HAS_DENORM__ 1
__SIZEOF_LONG_DOUBLE__ 8
__DBL_MAX__ 1.7976931348623157e+308
__DBL_HAS_INFINITY__ 1
__DEC32_MIN_EXP__ (-95)
__LDBL_HAS_DENORM__ 1
__DEC128_MAX__ 9.999999999999999999999999999999999E6144DL
__USING_SJLJ_EXCEPTIONS__ 1
__DEC32_MIN__ 1E-95DF
__DBL_MAX_EXP__ 1024
__DEC128_EPSILON__ 1E-33DL
__LONG_LONG_MAX__ 9223372036854775807LL
__SIZEOF_SIZE_T__ 4
__SIZEOF_WINT_T__ 4
__GXX_ABI_VERSION 1002
__FLT_MIN_EXP__ (-125)
__DBL_MIN__ 2.2250738585072014e-308
__AVR32_AVR32A__ 1
__AVR32_ELF__ 1
__DEC128_MIN__ 1E-6143DL
__REGISTER_PREFIX__  
__DBL_HAS_DENORM__ 1
__NO_INLINE__ 1
__FLT_MANT_DIG__ 24
__VERSION__ "4.3.2"
__AVR32_HAS_DSP__ 1
__DEC64_EPSILON__ 1E-15DD
__DEC128_MIN_EXP__ (-6143)
__AVR32__ 1
__SIZE_TYPE__ long unsigned int
__AVR32_UC__ 1
__DEC32_DEN__ 0.000001E-95DF
__ELF__ 1
__FLT_RADIX__ 2
__LDBL_EPSILON__ 2.2204460492503131e-16L
__SIZEOF_PTRDIFF_T__ 4
__FLT_HAS_QUIET_NAN__ 1
__FLT_MAX_10_EXP__ 38
__LONG_MAX__ 2147483647L
__FLT_HAS_INFINITY__ 1
__DEC64_MAX__ 9.999999999999999E384DD
__DEC64_MANT_DIG__ 16
__DEC32_MAX_EXP__ 96
__DEC128_DEN__ 0.000000000000000000000000000000001E-6143DL
__LDBL_MANT_DIG__ 53
__DBL_HAS_QUIET_NAN__ 1
__WCHAR_TYPE__ int
__SIZEOF_FLOAT__ 4
__DEC64_MIN_EXP__ (-383)
__FLT_DIG__ 6
__INT_MAX__ 2147483647
__FLT_MAX_EXP__ 128
__DBL_MANT_DIG__ 53
__DEC64_MIN__ 1E-383DD
__WINT_TYPE__ unsigned int
__SIZEOF_SHORT__ 2
__LDBL_MIN_EXP__ (-1021)
__LDBL_MAX_10_EXP__ 308
__DBL_EPSILON__ 2.2204460492503131e-16
__SIZEOF_WCHAR_T__ 4
__DEC_EVAL_METHOD__ 2
__INTMAX_MAX__ 9223372036854775807LL
__FLT_DENORM_MIN__ 1.40129846e-45F
__FLT_MAX__ 3.40282347e+38F
__SIZEOF_DOUBLE__ 8
__FLT_MIN_10_EXP__ (-37)
__INTMAX_TYPE__ long long int
__DEC128_MAX_EXP__ 6144
__GNUC_MINOR__ 3
__DEC32_MANT_DIG__ 7
__DBL_MAX_10_EXP__ 308
__LDBL_DENORM_MIN__ 4.9406564584124654e-324L
__STDC__ 1
__AVR32_UC3B0256__ 1
__PTRDIFF_TYPE__ long int
__DEC128_MANT_DIG__ 34
__LDBL_MIN_10_EXP__ (-307)
__SIZEOF_LONG_LONG__ 8
__LDBL_DIG__ 15
__GNUC_GNU_INLINE__ 1
__avr32__ 1