.section .text和带有气体的.text之间的区别

时间:2018-09-11 22:08:59

标签: x86 directive gas

据我所知,使用objdump可以使用

.section .text

.text

是等效的。这是真的?

摘自汽油手册.section name

  

使用.section指令将以下代码组合到名为 name 的节中。

摘自汽油手册.text subsection

  

告诉as将以下语句组合到编号为 subsection 的文本子节的末尾,这是一个绝对表达式。如果省略 subsection ,则使用第零子节。

我的问题也适用于.data

1 个答案:

答案 0 :(得分:2)

我认为两者之间的差异很小。

.section允许程序员指定 any 节名称,因此a.out格式不支持本文档中所述(而对于 COFF ELF )。

  

仅实际支持任意命名节的目标才支持此伪指令;例如,对于a.out目标,即使使用标准的a.out节名称,也不接受。

相反,

.text始终指定代码节,而不考虑其输出格式中的实际名称。

考虑到在96年之前添加了a.out,而 ELF ,我不会认为与这种旧格式的兼容性成为问题。

.text.data节省了一些击键操作,但是为了保持一致性,始终使用.section是完全可以的。