Dear All,
it looks to me, that exp() is implemented by loading some constant 8 byte unsigned integer literal which in fact is a double literal.
I think this should be stored as a double literal,
as otherwise we get the following code to load this literal into a register
(visual C++ 2012):
mov rax,40862E42FEFA39EFh
mov qword ptr [rsp+108h],rax
vmovsd xmm11,qword ptr [rsp+108h]
Kind Regards
Peter Foelsche
PS.
compiler options:
/MP /GS- /GL /W3 /Gy /Zc:wchar_t /Zi /Gm- /Ox /Ob2 /Fd"x64\Release\vc120.pdb" /fp:fast /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_LIB" /D "_UNICODE" /D "UNICODE" /errorReport:prompt /GF /WX- /Zc:forScope /GR /arch:AVX2 /Gd /Oy /Oi /MD /openmp- /Fa"x64\Release\" /EHsc /nologo /Fo"x64\Release\" /Ot /Fp"x64\Release\test_boost_simd.pch"
This email may
contain material that is confidential and/or proprietary that the sender
intended only for specific recipients. Any review by unintended
recipients, forwarding or creating derivative works without the written
permission of Silvaco, Inc. or its subsidiaries is strictly
prohibited. If you are not the intended recipient, please contact the
sender and delete all copies.