【发布时间】:2012-03-15 03:34:42
【问题描述】:
我下载了glibc的源代码,找了半天函数ceil(),但是找不到,谁能告诉我在哪里?
我在哪里可以找到有关如何在 glibc 的源代码中找到某些函数的源代码的详细信息。
谢谢。
【问题讨论】:
我下载了glibc的源代码,找了半天函数ceil(),但是找不到,谁能告诉我在哪里?
我在哪里可以找到有关如何在 glibc 的源代码中找到某些函数的源代码的详细信息。
谢谢。
【问题讨论】:
猜测,它可能是用汇编语言编写的。基本上分三步完成:
不幸的是,更改舍入模式的代码相当难看。舍入模式是浮点控制寄存器中的几位。您无法更改 FPU 内部的 FPCR,因此您必须将其存储,然后将其加载到 CPU 上的寄存器中,修改一些位,将其存储,然后将修改后的版本加载回 FPU。然后你执行一条 FP 指令,然后再次执行相同的操作,但相反。
我似乎确实记得几年前英特尔的一些文献中谈论过这个问题,并且(也许)谈论过一种更好的方法来处理它——但我可以想象,即使我不是,我也不会不记得他们改进后的版本是如何工作的。
【讨论】: