在此页面上:http://www.scs.stanford.edu/histar/src/pkg/uclibc/libc/sysdeps/linux/x86_64/sigaction.c
我看到这两行:
extern void restore_rt (void) asm ("__restore_rt") attribute_hidden;
extern void restore (void) asm ("__restore") attribute_hidden;
Run Code Online (Sandbox Code Playgroud)
这是什么语法?它是否设置restore_rt为具有内联作用的函数asm("__restore_rt")?
谢谢!
显然这是一种替换 C 函数符号名称的方法......
为了更改函数的名称,您需要原型声明,因为编译器不会接受函数定义中的 asm 关键字:
extern long Calc(void) asm ("CALCULATE");
Run Code Online (Sandbox Code Playgroud)
调用函数 Calc() 将创建汇编指令来调用函数 CALCULATE。
在本文档中搜索“替换 C 函数的符号名称”
| 归档时间: |
|
| 查看次数: |
1002 次 |
| 最近记录: |