首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用armasm编译arm程序集文件

无法使用armasm编译arm程序集文件
EN

Stack Overflow用户
提问于 2010-06-25 15:56:52
回答 2查看 1.3K关注 0票数 2

我正在使用libmpeg2在我的pocket pc项目中显示视频。此库的最新版本为ARM处理器提供了加速,其中一些函数在arm汇编中进行了重写(在单独的文件motion_comp_arm_s.S中)。问题是来自Visual Studio9的armasm不能编译它,产生了很多错误。我的问题是,哪种arm汇编编译器适合这样的代码?

代码语言:javascript
复制
    .text

@ ----------------------------------------------------------------
    .align
    .global MC_put_o_16_arm
MC_put_o_16_arm:
    @@ void func(uint8_t * dest, const uint8_t * ref, int stride, int height)
    pld [r1]
        stmfd sp!, {r4-r11, lr} @ R14 is also called LR
    and r4, r1, #3
    adr r5, MC_put_o_16_arm_align_jt
    add r5, r5, r4, lsl #2
    ldr pc, [r5]
   
...

Thank you for any help
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-25 19:48:33

这是GNU assembler使用的语法。代码本身对于任何汇编器都应该(或多或少)相同;要使用microsoft汇编器进行此构建,主要的更改将是:

;

  • Change
  • @字符(表示注释)更改为将指令(以.开头的单词)记录的here更改为它们的微软等效项、记录的here。例如,.text变成了CODE.

这应该可以修复大多数错误。

票数 3
EN

Stack Overflow用户

发布于 2014-05-26 18:57:20

使用ARM RVDS编译器

示例代码的语法如下所示

代码语言:javascript
复制
      AREA     ARMex, CODE, READONLY
      ENTRY
START
      MOV R0,#1
      MOV R1,#2
      ADD R0,R0,R1
      END

将代码另存为test.s

编译和生成目标文件的命令是

代码语言:javascript
复制
armasm --arm test -o test.s
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3116403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档