ARM状态和编译器状态统一
时间:11-11
来源:互联网
点击:
整个预编译段就是为了说明要ARM的当前状态和编译器的状态要统一。这是个标准的例子,实际大多数情况不需要。但是上面的config==16只说明你编译器当前在使用的TASM.EXE 但你现在 Thumb-capable ARM processors start in ARM state(注意是MCU的状态和编译器无关)。所以要使两者一致编译出来的代码才能被运行,使用CO DE32 使编译器也处于ARMASM.EXE状态,CO DE16/32只会影响编译器,只有BX会改变processors state.只要两者一致就好
;Check if tasm.exe(armasm -16@ADS1.0) is used.
GBLL THUMBCODE
[ {CONFIG} = 16
THUMBCODE SETL {TRUE}
CO
|
THUMBCODE SETL {FALSE}
]
MACRO
MOV_PC_LR
[ THUMBCODE
bx lr
|
mov pc,lr
]
MEND
MACRO
MOVEQ_PC_LR
[ THUMBCODE
bxeq lr
|
moveq pc,lr
]
MEND
ARM状态编译器状态统 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)