LEI-Xiongwei 不需特别折腾。这文章的作者现在是龙芯员工了,文章里提到的东西都已经进入上游glibc,对着函数名找具体实现方式就行了。
xen0n 最新版本的glibc 2.38 里面的字符串处理函数变得挺抽象的,我还没找到对应的汇编在哪儿。 😅
xen0n 我在glibc 2.38 的 sysdep/loongarch 目录下没有找到跟字符串优化相关的汇编代码。
LEI-Xiongwei 在 "https://sourceware.org/git/glibc.git" 所在的仓库中查看git log,"dengjianbo" 大佬应该是相关补丁提交者
Sunny 网址打不开。
Sunny 非常感谢! 😃
打开了,应该是梯子的问题。
@xen0n @Sunny 为什么这段代码可以直接用C语言的“#include”和宏定义,又可以直接写汇编,内链汇编不是要用asm()包起来的吗?
LEI-Xiongwei .S结尾,这是汇编文件,需要预处理,leaf()是一个叶子函数
你可以看一下我写的一个gforth的后端的汇编代码,可以利用他查看code字,都是用的汇编指令
狗剩 所以说“#include”,“#define”这些其实是汇编指令?
LEI-Xiongwei 大写 .S 的汇编文件先用 C 预处理器处理再汇编,小写 .s 直接汇编。
.S
.s
这里是大写 .S 所以会先用 C 预处理器过一遍。
这是宏,但可以用gcc进行预处理
不是汇编指令
xry111 Xi Ruoyao 大佬您好,请问你们在OpenSSL的MD5汇编实现中为什么没有用原来X86中用的cfi呢?
LEI-Xiongwei 不是我写的。而且好像除了 x86 以外都没有用 .cfi_*。
这个东西应该只对 C++ 异常处理 (但是 OpenSSL 是 C),以及提高调试和性能分析的精确度有用,可能大家目前还没有这么高的精确度要求?或者由于某种原因别的架构上没有这个东西精确度也凑合够用,而 x86 上直接爆炸?我不是很清楚。
xry111 好的,谢谢您的解答。
本站文章除其作者特殊声明外,一律采用CC BY-NC-SA 4.0许可协议进行授权。进行转载或二次创作时务必以相同协议进行共享,严禁用于商业用途。