什么是组合中的STT_FUNC类型

时间:2017-10-05 06:46:38

标签: assembly x86-64

我有以下的assemblly代码。但我无法理解什么是STT_FUNC ??

.section .rodata
    Lhello:
        .asciz "Hello!"

.section .text
        .globl function1
        .type function1, STT_FUNC
function1:

1 个答案:

答案 0 :(得分:1)

documentation所示,指令

.type function1,STT_FUNC

还写了

.type function1,@function

将符号function1标记为符号类型 STT_FUNC。当动态链接时,这会产生差异,因为仅为函数生成PLT条目。

通常最好恰当地标记符号:将数据标记为

.type some_variable,@object

和将函数称为

的符号
.type some_function,@function