2017-10-05 55 views
-2

我有以下的代碼組裝。但我不明白什麼是STT_FUNC?什麼是STT_FUNC類型彙編

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

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

這看起來像GNU'as'。你有沒有試過閱讀[文檔](https://sourceware.org/binutils/docs/as/)? –

+0

這個問題怎麼樣?請澄清或刪除標籤。 – Yunnosch

+0

當編譯器進行此操作時,您的編譯器所針對的平臺和目標文件格式是什麼? –

回答

1

documentation所示,該指令

.type function1,STT_FUNC 

也寫入

.type function1,@function 

標記符號function1爲具有符號類型STT_FUNC。由於僅爲函數生成PLT條目,因此在動態鏈接時會有所不同。

它通常是,以正確標記你的符號是一個好主意:標記符號參照數據

.type some_variable,@object 

和符號指功能

.type some_function,@function 
+0

啊,我總是想知道什麼符號類型的信息是除了調試。 –