打印

stm32汇编,gcc编译器求教

[复制链接]
6545|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
李富贵|  楼主 | 2013-1-8 19:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
        LDR     R12,=rt_free_box
        MRS     R3,IPSR
        LSLS    R3,#24
        BXNE    R12
        MRS     R3,CONTROL
        LSLS    R3,#31
        BXEQ    R12
        SVC     0
        BX      LR

报错:
Error: thumb conditional instruction should be in IT block -- `bxne R12'
Error: thumb conditional instruction should be in IT block -- `bxeq R12'

gcc4.6.2编译器设置
AS   = arm-none-eabi-gcc -x assembler-with-cpp
ASFLAGS = $(MCFLAGS) -mthumb -mfpu=vfp -mno-thumb-interwork -msoft-float -mfix-cortex-m3-ldrd -g -gdwarf-2 -Wa,-amhls=$(<:.s=.lst) $(ADEFS)

该程序为rvmdk下面正确可用的代码,我把它移植到gcc上面就出了这个问题。
沙发
witnessiz| | 2013-1-8 19:53 | 只看该作者
打开-Wa,-mimplicit-it=thumb,该选项会自动插入IT指令

使用特权

评论回复
板凳
李富贵|  楼主 | 2013-1-13 23:20 | 只看该作者
结贴给分

使用特权

评论回复
地板
aozima| | 2013-6-22 20:15 | 只看该作者
witnessiz 发表于 2013-1-8 19:53
打开-Wa,-mimplicit-it=thumb,该选项会自动插入IT指令

谢谢。

开始搞查清楚-Wa,的意思是把参数传递给汇编器,以及漏了后面的逗号,
浪费了十分钟。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:上联:subway railway highway,way way to die 下联:investigator officer announcer,sir sir to lie 横批:welcome to china

29

主题

1274

帖子

7

粉丝