ARM SDT下汇编到GNU汇编的转换

将ARM SDT下的汇编码移植到GCC for ARM编译器时,经常要做如下修改:
1、注释行以“@”或“”代替“;” 
2、伪操作符替换: 
INCLUDE 替换成 .INCLUDE 
TCLK2  EQU  PB25 替换成          .equ  TCLK2, PB25 
EXPORT 替换成 .global 
IMPORT 替换成 .extern 
DCD 替换成 .long 
IF EF: 替换成  .IFDEF 
ELSE 替换成 .ELSE 
ENDIF 替换成 .ENDIF 
:OR: 替换成 | 
:SHL: 替换成 << 

END                     替换成      .end 
符号定义加":"号 

AREA Word, CODE, READONLY --> .text 
AREA Block, DATA, READWRITE --> .data 
CODE32 --> .arm 
CODE16 --> .thumb 
LTORG --> .ltorg 
% --> .fill 

3、操作数及运算符号替换 
ldr pc, [pc, #&18]  替换成   ldr

你可能感兴趣的:(gcc)