1
我已經下載了glibc的源代碼,並且很長一段時間找到函數ceil(),但是我找不到它,誰能告訴我它在哪裏?哪裏可以找到數學函數ceil()在glibc中的源代碼?
我在哪裏可以找到一些關於如何在glibc源代碼中查找特定函數源代碼的詳細信息。
謝謝。
我已經下載了glibc的源代碼,並且很長一段時間找到函數ceil(),但是我找不到它,誰能告訴我它在哪裏?哪裏可以找到數學函數ceil()在glibc中的源代碼?
我在哪裏可以找到一些關於如何在glibc源代碼中查找特定函數源代碼的詳細信息。
謝謝。
有人猜測,它可能是用匯編語言編寫的。它的三個步驟基本做到了:
不幸的是,改變舍入模式的代碼相當難看。舍入模式是浮點控制寄存器中的幾位。您不能更改FPU內部的FPCR,因此您必須將其存儲,然後將其加載到CPU上的寄存器中,修改某些位,存儲該位,然後將修改後的版本加載回FPU。然後執行一條FP指令,然後再次執行,但是相反。
我似乎記得幾年前英特爾的一些文獻談到這件事,並且(或許)正在討論一種更好的方法來處理它 - 但我可以想象得到,即使我不是,我也不會不記得他們的改進版本是如何工作的。
當然,glibc的作用不僅僅是英特爾。所以假設你是正確的,並且它是在彙編中完成的,那麼在那裏必須有多個實現。 – 2012-03-15 09:07:09