revert to older version as /Zm option for "ml" can not work well.
A bug exists when there are such statement in a asm file:
_InterlockedCompareExchangePointer PROC
_InterlockedCompareExchangePointer ENDP
_InterlockedCompareExchange32 PROC
mov ecx, [esp + 4]
mov eax, [esp + 8]
mov edx, [esp + 12]
lock cmpxchg [ecx], edx
ret
_InterlockedCompareExchange32 ENDP
The assembly will export _InterlockedCompareExchangePointer but not _InterlockedCompareExchange32 when using /Zm option.
This option also introduced another strange issue in link time. Link tool will complain it can not find all symbols exported in the asm file when it is built by /Zm option.