gpt4 book ai didi

c - MSVCRT:sin、cos等的实现(源码)在哪里?

转载 作者:太空狗 更新时间:2023-10-29 16:09:10 25 4
gpt4 key购买 nike

我想知道在 Visual C++ CRT 中哪里可以找到基本三角函数的实现。

C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\crt“sin”

在文件中查找显示math.h 中的定义,仅此而已(除了某些 def 文件的 EXPORTS 部分中的提及)。

据我所知,sin 不是编译器将自己翻译成机器代码的关键字。所以必须在某处有一个实现,即使该实现归结为一些直接的汇编代码。

我在这里错过了什么? codez 在哪里?

编辑: 显然,我不够清楚:我在寻找源代码,而不是编译的 lib 或 dll

最佳答案

它在 MSVCR90.DLL 中:

C:\WINDOWS\WinSxS\x86_Microsoft.VC90.CRT_...>dumpbin /exports msvcr90.dll | findstr sin
74 48 0007ABA0 _CIasin = __CIasin
84 52 0007B5C0 _CIsin = __CIsin
85 53 0007AF38 _CIsinh = __CIsinh
159 9D 000236AB __get_flsindex = ___get_flsindex
160 9E 000236AB __get_tlsindex = ___get_flsindex
177 AF 0007CE73 __libm_sse2_asin = ___libm_sse2_asin
178 B0 0007D2C1 __libm_sse2_asinf = ___libm_sse2_asinf
192 BE 0007FE7C __libm_sse2_sin = ___libm_sse2_sin
193 BF 00080039 __libm_sse2_sinf = ___libm_sse2_sinf
696 2B7 0002E27A _mbsinc = __mbsinc
697 2B8 0002E24E _mbsinc_l = __mbsinc_l
1211 4BA 0007AB60 asin = _asin
1349 544 0007B580 sin = _sin
1350 545 0007AF20 sinh = _sinh

更新:

未提供来源。在提供的 CRT 源代码中提供函数的库似乎在 crt\src\intel\mt_lib\tran.lib 中:

C:\...\crt\src\intel\mt_lib> lib /list tran.lib
: : :
f:\dd\vctools\crt_bld\SELF_X86\crt\prebuild\build\INTEL\mt_obj\_sincosf_sse2_.obj
f:\dd\vctools\crt_bld\SELF_X86\crt\prebuild\build\INTEL\mt_obj\_sincos_sse2_.obj
f:\dd\vctools\crt_bld\SELF_X86\crt\prebuild\build\INTEL\mt_obj\_sinf_sse2_.obj
f:\dd\vctools\crt_bld\SELF_X86\crt\prebuild\build\INTEL\mt_obj\_sin_sse2_.obj
f:\dd\vctools\crt_bld\SELF_X86\crt\prebuild\build\INTEL\mt_obj\_tanf_sse2_.obj
f:\dd\vctools\crt_bld\SELF_X86\crt\prebuild\build\INTEL\mt_obj\_tan_sse2_.obj
: : :

关于c - MSVCRT:sin、cos等的实现(源码)在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7621089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com