Hi folks,
I am developing a COM-ATL application with VS2003.NET, and I run into this
situation:
I have built the app to a satisfactory point and after that I start playing
with compiler optimization switches.
I would like to go back to initial switch settings.
I kept the initial bins version .exe & stuff of the program. Below is a
comparison (disassembly) example of the original version and the actual
version:
Any ideas what will be the compiler switches to get to the initial bin
generated?
C++ constructor _initterm( __xc_a, __xc_z ) for CComModule _Module;
Initial:
push esi
mov esi,offset _Module
mov ecx,esi
call ATL::CAtlModule::CAtlModule
push offset $E6
mov dword ptr [_Module],offset ATL::CComModule::`vftable'
mov dword ptr [ATL::_pModule],esi
call _atexit
pop ecx
pop esi
ret
Actual:
mov ecx,offset _Module
call ATL::CComModule::CComModule
push offset $E6
call atexit
pop ecx
ret
ATL::CComModule::CComModule:
push esi
mov esi,ecx
call ATL::CAtlModule::CAtlModule
mov dword ptr [esi],offset ATL::CComModule::`vftable'
mov dword ptr [ATL::_pModule],esi
mov eax,esi
pop esi
ret
Actual Compiler switches are:
/Og /Ob2 /Oi /Os /Oy /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /GF /FD /EHsc /MD
/GS
/Yu"stdafx.h" /Fp"Release/MyApp.pch" /Fo"Release/" /Fd"Release/vc70.pdb" /W3
/nologo /c /Zi /TP
Thanks
JD