ARM编译器预界说了一些宏,这些预界说宏对应必定的数值,有些预界说宏没有对应数值,见下表:
_arm _运用编译器armcc,tcc,armcpp,tcpp时
_ARMCC_VERSION Ver 代表编译器版别号,其格局为:
PVtbbb,其间:
P为产品编号(1代表ADS)
V为副版别号(1代表1.1)
T为补丁版别号(0代表1.1)
bbb为build号(比方650)
_APCS_INTERWORK _ 运用编译选项-apcs/interwork时
_APCS_ROPI _ 运用编译选项apcs/ropi时
_RWPI _ 运用编译选项-apcs/rwpi时
_APCS_SWST _ 运用编译选项-apcs/swst时
_BIG_ENDIAN _ 编译器针对方针系统运用big-endian内存形式时
_cplusplus _ 编译器作业与C++形式时
_CC_ARM _ 回来编译器的称号
_DATE_ date 编译源文件的日期
_embedded_cplusplus 编译器作业于EC++形式时
_FEATURE_SINGED_CHAE 运用编译设置选项-zc时设置该预界说宏
_FILE_ name 包括全途径的当时被编译的源文件称号
_func_ name 当时被编译的函数称号
_LINE_ num 当时被编译的代码行号称号
_MOUDLE_ mod 预界说宏_FILE_的文件称号部分
_OPTIMISE_SPACE _ 运用编译选项-OSPACE时
_OPTIMISE_TIME _ 运用编译选项-Otime时
_pretty_func name unmangled的当时函数称号
_sizeof_int 4 sizeof(int),在预处理表达式中能够运用
_sizeof_long 4 sizeof(long),在预处理表达式中能够运用
_sizeof_ptr 4 sizeof(void*)在预处理表达式中能够运用
_SOFTFP _ 编译时运用浮点数
_ _在各种编译器形式下
_STDC_VERSION _ 规范的版别信息
_STRICT_ANSI_ _ 运用编译选项-STRICT时
_TARGET_ARCH_xx _ xx代表ARM系统编号
_TARGET_CPU_xx _ xx代表CPU编号
_TARGET_FEATURE_ 当ARM系统支撑指令PLD,LDRD,STRD,MCRR,MRRC时
DOUBLEWORD _ 设置该界说宏
_TARGET_FEATURE_ 当系统中包括DSP乘法处理器时,设置该
DSPMUL _ 预界说宏
_TARGET_FEATURE_ 假如方针ARM系统支撑半字拜访以及有符号的字节数据
HALFWORD _ ,设置该预界说宏
_TARGET_FEATURE_ 假如方针ARM系统支撑长乘法指令MULL和
MULTIPLY _ MUAL,设置该预界说宏
_TARGET_FEATURE_ 假如方针ARM系统支撑THUMB指令
THUMB _
_TARGET_FPU_xx _ 表明FPU选项,或许取值如下所示:
_TARGET_FPU_VFP
_TARGET_FPU_FPA
_TARGET_FPU_SOFTVFP
_TARGET_FPU_SOFTVFP_VFP
_TARGET_FPU_SOFTFPA
_TARGET_FPU_NONE
_thumb _ 编译器为tcc或tcpp时,设置该预界说宏
_TIME 源文件编译时刻