mplab xc8/16 builtin_constant_p
mplab xc8/16 builtin_constant_p
我在 mplab 编译器用户指南中搜索此内容,但没有找到任何内容。我在这里问它是为了确认我不是盲人或任何东西:
GCC 编译器提供了一些非常有趣和有用的内置函数,例如 __builtin_constant_p(x) 或类似的东西。我从来没有在微芯片编译器中发现过类似的东西,而且我认为没有。
所以问题是:Microchip XCxx 编译器是否提供除设备特定函数之外的任何非标准内置函数(如在给定寄存器地址声明变量或声明中断函数)?
编辑: 进一步说明:我最感兴趣的是从编译器中检索信息。一个很好的例子是像 builtin_constant 这样的东西,因为它使程序可以使用通常不可用的信息。但是我不把这个问题限制在只找常量表达式。
XC16 手册在 google 中,即将发布:http://ww1.microchip.com/downloads/en/DeviceDoc/50002071E.pdf 附录 G.
@Marco van de Voort 提到的同一文档在第 19.4 节中有一个预定义宏列表,为您提供有关编译器环境和设备的信息。
还有一些未记录的 __DEBUG 宏,它是在 MPLABX 下 运行 调试模式下定义的(MPLABX 在调用编译器时定义了它)。
这些是 XC16 编译器支持的内置函数
例如__builtin_add
有关内置函数的完整说明,请参阅 MPLAB XC16 编译器用户手册(在编译器安装的 "docs" 文件夹下)或此处:http://www.microchip.com/mymicrochip/filehandler.aspx?ddocname=en559023
我在 mplab 编译器用户指南中搜索此内容,但没有找到任何内容。我在这里问它是为了确认我不是盲人或任何东西:
GCC 编译器提供了一些非常有趣和有用的内置函数,例如 __builtin_constant_p(x) 或类似的东西。我从来没有在微芯片编译器中发现过类似的东西,而且我认为没有。
所以问题是:Microchip XCxx 编译器是否提供除设备特定函数之外的任何非标准内置函数(如在给定寄存器地址声明变量或声明中断函数)?
编辑: 进一步说明:我最感兴趣的是从编译器中检索信息。一个很好的例子是像 builtin_constant 这样的东西,因为它使程序可以使用通常不可用的信息。但是我不把这个问题限制在只找常量表达式。
XC16 手册在 google 中,即将发布:http://ww1.microchip.com/downloads/en/DeviceDoc/50002071E.pdf 附录 G.
@Marco van de Voort 提到的同一文档在第 19.4 节中有一个预定义宏列表,为您提供有关编译器环境和设备的信息。
还有一些未记录的 __DEBUG 宏,它是在 MPLABX 下 运行 调试模式下定义的(MPLABX 在调用编译器时定义了它)。
这些是 XC16 编译器支持的内置函数
例如__builtin_add
有关内置函数的完整说明,请参阅 MPLAB XC16 编译器用户手册(在编译器安装的 "docs" 文件夹下)或此处:http://www.microchip.com/mymicrochip/filehandler.aspx?ddocname=en559023