gcc / g ++中__declspec(naked)的等价物

gcc / g ++__declspec( naked )的等价物是什么? __declspec( naked )实际上用于声明一个没有任何结尾和序言的函数。

Solutions Collecting From Web of "gcc / g ++中__declspec(naked)的等价物"

我相信在Linux下最近的GCC没有这样的等价物。 编译器会在适当的时候发出序言和结尾,你应该把这个决定留给它。 做序言或结尾可能相当好,甚至有时不存在。

你可以在汇编中编写你的函数。 或者你可以在你的函数中加入asm语句。

而你没有告诉你为什么要这样做。 你的目标是什么,为什么你问呢?

在某些体系结构中,gcc支持一个名为“裸”的属性。 最近的gcc文档给出了这个架构列表:ARM,AVR,MCORE,RX和SPU。

如果您正在使用其中一种体系结构(如果您尝试使用它并且不支持,gcc会给出警告),则可以使用如下所示的属性:

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

[最近在gcc开发者名单上讨论了一些关于将“裸”属性作为一个更普遍的特性加入其中的尝试,并试图在更多的架构上支持它,但显然这并不能帮助你。