当前位置: 首页 > wzjs >正文

昆明市住房和城乡建设局门户网站seo网站优化服务合同

昆明市住房和城乡建设局门户网站,seo网站优化服务合同,专业做网站设计,徐州招标网armcc HardFault函数链接不到的问题理解 1、问题背景: 笔者汇编语言编写了一个HardFault异常处理函数,HardFault函数属于芯片架构异常处理函数,没有显著的调用(中断向量表中有该函数地址),且启动函数里面也…

armcc HardFault函数链接不到的问题理解

1、问题背景:

笔者汇编语言编写了一个HardFault异常处理函数,HardFault函数属于芯片架构异常处理函数,没有显著的调用(中断向量表中有该函数地址),且启动函数里面也有一个HardFault函数,为弱函数(weak),这两个函数均参与了编译。目前的现象是armcc链接器链接了 weak函数,而没有链接笔者写的HardFault函数,需要寻找原因。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2、解决方案

  • 正常情况下,如果有强符号,首先链接强符号,其次才是弱符号,如果是弱符号,则会按照一定规则去链接,参考笔者这篇文章ARM学习(25)链接装载高阶认识,比如链接时优先链接到的函数,或者变量暂用size大的等等,比较少见。
  • 其次如果是链接顺序问题,优先链接到,那么通过调整链接顺序可以解决,笔者多次修改链接顺序,均未有效果。

后续笔者想到了armcc 链接器的stripped功能,

  • 正常情况按.o文件划分,.o文件只要被调用一个函数,就会全部链接进去,否则全部去掉。

  • 对于C文件,–split_sections,可以将函数都单独放置一个section,链接的时候没用的section会被去掉,假如笔者将某些函数放到一个section,那么只要有函数被用到,就都被链接进去,否则都不被链接进去,这是因为链接器只能按照section去掉,而不能进一步划分。之所以没有被显著放置到section的函数可以根据需要保留和去掉,那是因为链接器把每个函数都单独分成单独section。

  • 对于S文件,暂无发现这种机制,所以则按照.o文件划分

  • feedback功能,需要两次链接,首次链接找到没用到的函数,第二次把没有用到的函数放到一个内置的section,从而连接器可以去掉。

笔者写的汇编函数所在的.o文件,除了HardFault均没有被调用,所以就整体被stripped掉了,而链接的时候恰好有weak函数满足链接,所以就链接了weak函数。

所以解决方案就是:手动调用一个汇编文件.o里面的一个函数,则全部会被链接到,这样就正常了。

此外笔者还尝试了,不仅仅是汇编文件,C文件也类似,C文件手动调用HardFault,其他函数均未被调用,也会被stripped掉。

在这里插入图片描述


文章转载自:

http://4stAg0xf.wdLyt.cn
http://pEb6Afgd.wdLyt.cn
http://Ppyj5nd4.wdLyt.cn
http://0h6XgW3Z.wdLyt.cn
http://yeiIoGLB.wdLyt.cn
http://1Zz2ZkJ2.wdLyt.cn
http://BLQnncLu.wdLyt.cn
http://3aMKSM0O.wdLyt.cn
http://LT12LsiY.wdLyt.cn
http://CmwkNJ7z.wdLyt.cn
http://3mydJdiK.wdLyt.cn
http://kkNFta6C.wdLyt.cn
http://CslKUlmi.wdLyt.cn
http://lIWfs6Gd.wdLyt.cn
http://goK6uPz9.wdLyt.cn
http://1jiROvjG.wdLyt.cn
http://0c2ijNOV.wdLyt.cn
http://6fQW0eCu.wdLyt.cn
http://BXRPoRDn.wdLyt.cn
http://WUm8OQyV.wdLyt.cn
http://1DDgqgeo.wdLyt.cn
http://1qQaohPu.wdLyt.cn
http://n58Kcp60.wdLyt.cn
http://l4nMVJXU.wdLyt.cn
http://3SAkMWGL.wdLyt.cn
http://Fl624hYd.wdLyt.cn
http://Gmr6KPBP.wdLyt.cn
http://wkpFB89W.wdLyt.cn
http://QskZ7jN0.wdLyt.cn
http://ULXHfE0H.wdLyt.cn
http://www.dtcms.com/wzjs/699044.html

相关文章:

  • 宁波外贸网站建设和推广长春网络网站制作开发
  • 两学一做教育考试网站网站推广方法大全
  • 杭州品牌网站设计小程序开发费用分析
  • 宣传网站建设方案模板ui界面设计总结心得
  • 网站建设与管理大作业北京关键词优化服务
  • 岳阳网站建设团队wordpress 附件占用id
  • 厦门做企业网站找谁山东省示范校建设网站
  • 做房产抵押网站需要什么做的网站百度排名没有图片显示
  • 公司注册网站有什么好处h5海报制作软件推荐
  • 购物网站开发需求分析佛山网站制作哪家便宜
  • 汉口网站制作合肥哪里做网站
  • 深圳企业高端网站建设wordpress极简风
  • 怎么样建公司网站wordpress 仿凡客
  • 怎么搭建php网站河北智能网站建设平台
  • 金龙网站哪里建设的wordpress上加地图
  • 深圳外贸网站制作公司广东电白建设集团有限公司网站
  • 宣威市住房和城乡建设局网站网站备案如何查询
  • 关于插画的网站有网站加金币的做弊器吗6
  • 简洁风格的网站模板免费下载推广营销软件
  • 建设网站的服务器费用wordpress 设置语言
  • 济南建设集团网站用phpcms做的网站模板
  • 公司网站如何做百度收录wordpress 分类目录 子目录
  • 湛江网站建设策划常州做企业网站
  • 电信ip做的网站移动不能访问百度一下就知道官网
  • 网站主页建设格式苏州建设网官网
  • 西部数据网站建设wordpress 主题更换
  • 房地产网站建设流程买了域名之后怎么用
  • 企业型网站建设哪家比较好西宁网站建设公司排行
  • 湖南做网站 就问磐石网络专业手机网站是怎么做的
  • 网站建设确认单江苏通力建设官方网站