×
单片机 > 单片机程序设计 > 详情

ARM编译器中预定义的宏

发布时间:2020-06-19 发布时间:
|
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                               源文件编译时间

关键字:ARM  编译器  预定义  宏

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
C51 特殊功能寄存器SFR的名称和地址