簡體   English   中英

gcc / g ++中__declspec(裸)的等價物

[英]Equivalent of __declspec( naked ) in gcc/g++

gcc / g ++__declspec( naked )的等價物是什么? __declspec( naked )實際上用於聲明一個沒有任何結語和序言的函數。

在某些體系結構中,gcc支持一個名為“naked”的屬性; 最新的gcc文檔我給出了這個架構列表:ARM,AVR,MCORE,RX和SPU。

如果您正在使用其中一種體系結構(如果您嘗試使用它並且不支持,gcc會給您一個警告),該屬性可以像這樣使用:

__attribute__ ((naked)) int fun ()
{
}

[最近在gcc開發人員列表上進行了一些討論,關於添加“naked”屬性作為更一般的功能,並嘗試在更多架構上支持它,但顯然這對你沒有幫助:)。

我相信在Linux下最近的GCC沒有這樣的等價物。 編譯器在適當的時候發出序言和結尾,你應該把它做出決定。 將序言或結語很小,甚至有時甚至不存在都可能相當不錯。

您可以在匯編中編寫函數代碼。 或者您可以將asm語句放在函數中。

而且你沒有告訴你為什么要那樣做。 你的目標是什么,為什么要問你?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM