我正在使用libmpeg2在Pocket PC项目中显示视频。该LIB的最后一个版本具有用于ARM处理器的加速度,其中一些功能在ARM组件中重写(在单独的File Motion_comp_arm_s.s)中。问题是Visual Studio 9的臂章无法编译,从而产生了很多错误。我的问题是,哪个ARM组装编译器适合此类代码?


    .text

@ -------------------------------------------------------------------------- --------------------- align .global mc_put_o_16_arm mc_put_o_16_arm:@@ void func(uint8_t * dest * dest,const uint8_t * ref,int stride,int stride,int height) {R4-R11,LR} @ R14也称为LR和R4,R1,#3 ADR R5,MC_PUT_O_O_16_ARM_ARNIGN_JT ADD R5,R5,R4,R4,LSL#2 LDR PC,[R5

...

感谢您的任何帮助

有帮助吗?

解决方案

那就是语法 GNU汇编器. 。对于任何汇编程序,代码本身应该(或多或少)相同;为了使用Microsoft汇编程序进行此构建,主要更改将是:

  • 更改 @ 字符(表示评论) ;
  • 更改指令(以 .)记录 这里 到他们的Microsoft等效物,记录在 这里. 。例如 .text 变成 CODE.

这应该解决大多数错误。

其他提示

使用ARM RVDS编译器
示例代码的语法如下

      AREA     ARMex, CODE, READONLY
      ENTRY
START
      MOV R0,#1
      MOV R1,#2
      ADD R0,R0,R1
      END

将代码保存为测试
命令编译和生成对象文件是

armasm --arm test -o test.s
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top