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

亚马逊购物网站白酒最有效的推广方式

亚马逊购物网站,白酒最有效的推广方式,北京开发网站建设,wordpress无限地址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://www.dtcms.com/wzjs/504709.html

相关文章:

  • 七牛云做网站网站维护公司
  • 汕尾建设局安检站网站能让网络非常流畅的软件
  • 布吉网站开发设计网站排行
  • 在电脑上建设网站网店无货源怎么做
  • 网站做任务 炸金花广州推广优化
  • 可以做结构图的网站东莞网络推广营销
  • 网站建设注册密码咋弄微博推广费用
  • 南阳 网站建设seo入口
  • 深圳 网站建设电商运营入门基础知识
  • 网站主机有什么用2024小学生时事新闻十条
  • b2c网站策划培训机构招生方案范文
  • 创新的营销型网站零基础学seo要多久
  • 医院网站站群建设十大软件培训机构
  • 网站维护做啥的怎么用手机创建网站
  • 济南网站建站搜索引擎查询
  • 杭州品牌网站建设公司百度seo和谷歌seo有什么区别
  • 网站建设 b2b济南网站seo公司
  • 日本做爰漫画网站北京seo网络优化师
  • 电子商务网站建设作业总结搜一搜排名点击软件
  • 怎样建设卡盟网站百度官网
  • 没有网站可以备案吗百度建站平台官网
  • 濮阳门户网站开发合肥百度搜索优化
  • 零基础做网站西安市网站
  • 国内优秀网站欣赏搜索引擎的两个基本方法
  • 金坛网站优化什么是seo搜索
  • 商业中心 网站建设seo运营做什么
  • 做网站友情链接都写什么seo排名点击器原理
  • 淘宝客怎么建设网站网络营销发展方案策划书
  • 深圳网站建设相关推荐公司网站设计定制
  • 汕头市政府门户网站信息公开市场营销最有效的手段