简介:ARM编译器中预定义的宏
*****************************************************
ARM编译器中预定义的宏
*****************************************************
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 源文件编译时间
推荐阅读最新更新时间:2024-11-09 23:01
设计资源 培训 开发板 精华推荐
- HNS-11MS46T 高精度VFD时钟
- L78L12AB 输出升压电路正电压稳压器的典型应用
- LT1307BCMS8 外部控制突发模式操作的典型应用电路
- 任意电子产品易改Type-充电的模块
- LT1085CT-3.3、3.3V/7.5A 低压差负电源的典型应用电路
- LTC4308 的典型应用 - 具有停滞总线恢复功能的低电压、电平转换热插拔 2 线总线缓冲器
- 基于STHV748的具有成本效益的超声脉冲发生器IC评估板
- TinyTextReader
- LTC3630AMPMSE 5V 至 76V 输入至 5V 输出、高效率、500mA 稳压器的典型应用电路
- AD5328 八通道、12 位数模转换器的典型应用