I have a C++ DLL which is currently built using Microsoft Visual Studio 2008 and which will be later used by several applications (some of which are native C++ and some of which are managed C# .NET).
My DLL currently uses multi-threaded dynamic runtime libraries (/MD) and single-threaded static IPP libraries.
I have a few functions that are performance critical where I would like to use the Intel compiler. I would prefer to continue using the Microsoft compiler for the rest of the DLL. I have done this using the "Use Intel C++ for selected file(s)..." option. The documentation seems to suggest I should be using a /Qvc option but I don't see one in my current compiler command-line. Is that a problem (my DLL appears to build and run correctly)?
My DLL appears to now have a runtime dependency on svml_dispmd.dll for the functions __svml_cosf4_ha(), __svml_sinf4_ha(), __svml_irem4() and __svml_floorf4(). Is this my only new dependency or is this a dispatcher that may have additional dependencies (which may depend on which CPU is installed)? Is it possible to avoid this dependency without also switching to the multi-threaded static runtime libraries (/MT) for the Microsoft compiler? Can I simply link my DLL against svml_dispmt.lib?