主题中讨论的其他部件:AM3359
工具/软件:TI C/C++编译器
clpru版本:2.1 .................4.
在伪操作宏的开发过程中,人们通常会发现有必要使用替换符号函数,例如用于区分常量和装配体标签符号的$isdefed (arg)。 下面的代码显示了在标签"my_label"之前和之后使用的伪操作MOV宏指令。
MOV R31,my_label
我的标签:
MOV R31,my_label
在MOV pseudo-op中"my_label"之前使用函数$isdefed("my_label")会导致$isdefed("my_label")== 0,而在MOV pseudo-op中,在 "my_label"之后会导致$isdefed("my_label")== 1。 这似乎表明宏扩展是在单次分析程序中进行的。 强大的汇编程序可能希望在第一次分析标签符号,以便在操作代码评估之前获得完整的符号表。
我还注意到$isreg (arg)无法正常工作。