uclinux-2008R1-RC8(bf561)到VDSP5的移植(52):cache.s的问题

 
快乐虾
http://blog.csdn.net/lights_joy/
 
  
本文适用于
ADI bf561 DSP
优视BF561EVB开发板
uclinux-2008r1-rc8 (移植到vdsp5)
Visual DSP++ 5.0
 
欢迎转载,但请保留作者信息
  
在arch/blackfin/mach-common/cache.s中,有一系列的语法差异:
[Error ea5004] "../../arch/blackfin/mach-common/cache.S":126 Syntax Error in :
cli R3; nop; nop; CSYNC; sti R3;;
syntax error is at or near text ';'.
Attempting error recovery by ignoring text until the ';'
这个错误对应的语句是:
       CSYNC(R3);
多了个分号。改为:
       CSYNC(R3)
[Error ea5007] "../../arch/blackfin/mach-common/cache.S":128 The label "1:" is illegal because it begins with a digit. If this is GNU assembly source, rewrite to a local temporary name of your choosing. If the GNU assembly code was generated from a macro, the VisualDSP++ preprocessing label auto-generation feature ("?") can be used to generate a unique local label.
 
[Error ea5003] "../../arch/blackfin/mach-common/cache.S":131 Semantic Error in instruction :
IF CC JUMP 1b (bp);
Operands don't fit instruction template 'IF CC JUMP expr'.
Check for an out of range immediate value or an illegal register.
 
[Error ea5004] "../../arch/blackfin/mach-common/cache.S":131 Syntax Error in :
IF CC JUMP 1b (bp);
syntax error is at or near text 'b'.
Attempting error recovery by ignoring text until the ';'
对应的语句为:
1:
       IFLUSH [P0++];
       CC = P0 < P1 (iu);
       IF CC JUMP 1b (bp);
改为:
_blackfin_icache_flush_range_1:
       IFLUSH [P0++];
       CC = P0 < P1 (iu);
       IF CC JUMP _blackfin_icache_flush_range_1 (bp);
[Error ea5004] "../../arch/blackfin/mach-common/cache.S":133 Syntax Error in :
cli R3; nop; nop; SSYNC; sti R3;;
syntax error is at or near text ';'.
Attempting error recovery by ignoring text until the ';'
对应的语句为:
       SSYNC(R3);
改为:
       SSYNC(R3)

你可能感兴趣的:(assembly,Semantic)