【发布时间】:2015-07-16 15:18:28
【问题描述】:
似乎 gcc 中以 x86 为目标的 >= 32 字节的顶级对象会自动获得 32 字节对齐。这可能对性能有好处,但我正在从用户定义部分中的所有目标文件中收集一组东西,而额外的对齐间隙会对这个数组造成严重破坏。有什么办法可以防止这种对象对齐吗?
为了澄清,我有一个低对齐的结构,不同的目标文件定义 用户定义部分中该结构的数组形式的数据,其中 目的是使一个应用程序范围广泛。 一旦这些数组之一> = 32,对象对齐和节对齐被推到32,当链接器将目标文件中的单独部分连接到可执行文件中时,它会在模块边界处创建对齐填充那个部分。
【问题讨论】:
标签: gcc linker memory-alignment object-files