arm - arm32目标的程序链接过程中的binutils-重定位类型
问题描述
最近一直在研究arm32目标的程序链接过程中的重定位类型。
我已经测试了一些小程序来产生不同的重定位类型来分析。而且我发现有些重定位类型很难生产,比如R_ARM_ABS16、R_ARM_ABS12、R_ARM_THM_ABS5和R_ARM_ABS8。
我试了很多次,没有一个能生产出来。我还尝试分析了binutils(2.26版)的源代码。但是在文件elf32-arm.c中的重定位方法elf32_arm_final_link_relocate()中找不到这些类型的线索。或者也许我只是不熟悉源代码并省略了一些要点。
有人知道这四种搬迁类型是干什么用的吗?我怎样才能生产它们?欢迎任何建议。
顺便说一句,在下面的文档链接中,有 arm32 目标的重定位类型描述。我所有的搬迁知识都来自这个文件。
http://infocenter.arm.com/help/topic/com.arm.doc.ihi0044f/IHI0044F_aaelf.pdf
解决方案
推荐阅读
- r - 如何对数据框进行多个功能
- mysql - 无法将Excel数据导入Mysql
- javascript - 是否可以“伪实现”LinkedIn 添加到个人资料按钮?
- angular - 如何使用 REST 调用的结果动态初始化 CellEditor
- elasticsearch - Elasticsearch - 如何结合 bool 和 range 过滤器
- pyspark - 需要使用 Pyspark 连接 Teradata 的解决方案
- testing - 我需要帮助查找非功能性需求基准的列表吗?
- javascript - 有没有办法在 App.Module.ts 中使用 configService?
- kubernetes - 使用带有外部 IP 地址的普罗米修斯
- reactjs - 如何在 react-native 的 Modal 中显示图像数组?