加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ARM程序集访问C全局变量

发布时间:2020-12-16 07:06:51 所属栏目:百科 来源:网络整理
导读:根据 http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0056d/Cihcciij.html ,如果我的ARM汇编代码需要访问名为globvar的C全局变量,我应该使用像这样的导入和加载指令: AREA globals,CODE,READONLY EXPORT asmsubroutine IMPORT globvarasm
根据 http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0056d/Cihcciij.html
,如果我的ARM汇编代码需要访问名为globvar的C全局变量,我应该使用像这样的导入和加载指令:

AREA     globals,CODE,READONLY
    EXPORT    asmsubroutine
    IMPORT    globvar
asmsubroutine
    LDR  r1,=globvar   ; read address of globvar into
                        ; r1 from literal pool
    LDR  r0,[r1]
    ADD  r0,r0,#2
    STR  r0,[r1]
    MOV  pc,lr
    END

,但是当我在我的代码中使用它时,会出现“bad instructionimport globvar’”的错误.
我正在使用armv7-android-gcc编译器.我也在这个论坛中寻找类似的问题,但我没有得到有用的结果,所以有人可以帮我解决这个问题吗?非常感谢.

解决方法

使用EXTERN globvar而不是IMPORT globvar.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读