]> git.proxmox.com Git - mirror_edk2.git/commitdiff
revert to older version as /Zm option for "ml" can not work well.
authoreric_tian <eric_tian@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 5 Dec 2008 07:35:41 +0000 (07:35 +0000)
committereric_tian <eric_tian@6f19259b-4bc3-4df7-8a09-765794883524>
Fri, 5 Dec 2008 07:35:41 +0000 (07:35 +0000)
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.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@6864 6f19259b-4bc3-4df7-8a09-765794883524

BaseTools/Conf/tools_def.template

index a6efc2fccb4e46514ea198f037a1bdb68b50a6bf..cc1dd0bb69b040d918fc2eb9f7bfaf1e541e15cc 100644 (file)
@@ -204,8 +204,8 @@ RELEASE_VS2003_IA32_DLINK_FLAGS          = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /O
 \r
   DEBUG_VS2005PRO_IA32_CC_FLAGS          = /nologo /c /WX /GS- /W4 /Gs8192 /Gy /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm\r
 RELEASE_VS2005PRO_IA32_CC_FLAGS          = /nologo /c /WX /GS- /W4 /Gs8192 /Gy /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF\r
-  DEBUG_VS2005PRO_IA32_ASM_FLAGS         = /nologo /c /WX /W3 /Cx /coff /Zd /Zi /Zm\r
-RELEASE_VS2005PRO_IA32_ASM_FLAGS         = /nologo /c /WX /W3 /Cx /coff /Zd /Zm\r
+  DEBUG_VS2005PRO_IA32_ASM_FLAGS         = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
+RELEASE_VS2005PRO_IA32_ASM_FLAGS         = /nologo /c /WX /W3 /Cx /coff /Zd\r
   DEBUG_VS2005PRO_IA32_DLINK_FLAGS       = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG\r
 RELEASE_VS2005PRO_IA32_DLINK_FLAGS       = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
       *_VS2005PRO_IA32_ASMLINK_FLAGS     = /nologo /tiny\r
@@ -228,8 +228,8 @@ RELEASE_VS2005PRO_IA32_DLINK_FLAGS       = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /O
 \r
   DEBUG_VS2005PRO_X64_CC_FLAGS           = /nologo /c /WX /GS- /X /W4 /Gs8192 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm\r
 RELEASE_VS2005PRO_X64_CC_FLAGS           = /nologo /c /WX /GS- /X /W4 /Gs8192 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF\r
-  DEBUG_VS2005PRO_X64_ASM_FLAGS          = /nologo /c /WX /W3 /Cx /Zd /Zi /Zm\r
-RELEASE_VS2005PRO_X64_ASM_FLAGS          = /nologo /c /WX /W3 /Cx /Zd /Zm\r
+  DEBUG_VS2005PRO_X64_ASM_FLAGS          = /nologo /c /WX /W3 /Cx /Zd /Zi\r
+RELEASE_VS2005PRO_X64_ASM_FLAGS          = /nologo /c /WX /W3 /Cx /Zd\r
   DEBUG_VS2005PRO_X64_DLINK_FLAGS        = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG\r
 RELEASE_VS2005PRO_X64_DLINK_FLAGS        = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
 \r
@@ -270,8 +270,8 @@ RELEASE_VS2005PRO_X64_DLINK_FLAGS        = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /O
       *_VS2005TEAMSUITE_IA32_MAKE_FLAGS  = /nologo\r
   DEBUG_VS2005TEAMSUITE_IA32_CC_FLAGS    = /nologo /c /WX /GS- /W4 /Gs8192 /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Gy /Zi /Gm\r
 RELEASE_VS2005TEAMSUITE_IA32_CC_FLAGS    = /nologo /c /WX /GS- /W4 /Gs8192 /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF\r
-  DEBUG_VS2005TEAMSUITE_IA32_ASM_FLAGS   = /nologo /c /WX /W3 /Cx /coff /Zd /Zi /Zm\r
-RELEASE_VS2005TEAMSUITE_IA32_ASM_FLAGS   = /nologo /c /WX /W3 /Cx /coff /Zd /Zm\r
+  DEBUG_VS2005TEAMSUITE_IA32_ASM_FLAGS   = /nologo /c /WX /W3 /Cx /coff /Zd /Zi\r
+RELEASE_VS2005TEAMSUITE_IA32_ASM_FLAGS   = /nologo /c /WX /W3 /Cx /coff /Zd\r
   DEBUG_VS2005TEAMSUITE_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG\r
 RELEASE_VS2005TEAMSUITE_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
       *_VS2005TEAMSUITE_IA32_ASMLINK_FLAGS= /nologo /tiny\r
@@ -295,8 +295,8 @@ RELEASE_VS2005TEAMSUITE_IA32_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /O
 \r
   DEBUG_VS2005TEAMSUITE_X64_CC_FLAGS     = /nologo /c /WX /GS- /X /W4 /Gs8192 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm\r
 RELEASE_VS2005TEAMSUITE_X64_CC_FLAGS     = /nologo /c /WX /GS- /X /W4 /Gs8192 /D UNICODE /O1ib2s /GL /Gy /FIAutoGen.h /EHs-c- /GR- /GF\r
-  DEBUG_VS2005TEAMSUITE_X64_ASM_FLAGS    = /nologo /c /WX /W3 /Cx /Zd /Zi /Zm\r
-RELEASE_VS2005TEAMSUITE_X64_ASM_FLAGS    = /nologo /c /WX /W3 /Cx /Zd /Zm\r
+  DEBUG_VS2005TEAMSUITE_X64_ASM_FLAGS    = /nologo /c /WX /W3 /Cx /Zd /Zi\r
+RELEASE_VS2005TEAMSUITE_X64_ASM_FLAGS    = /nologo /c /WX /W3 /Cx /Zd\r
   DEBUG_VS2005TEAMSUITE_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG\r
 RELEASE_VS2005TEAMSUITE_X64_DLINK_FLAGS  = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
 \r
@@ -737,8 +737,8 @@ RELEASE_MYTOOLS_*_ASM16_FLAGS     = /nologo /c /WX /W3 /coff /Cx /Zd
 \r
   DEBUG_MYTOOLS_IA32_CC_FLAGS            = /nologo /c /WX /GS- /W4 /Gs8192 /Gy /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm\r
 RELEASE_MYTOOLS_IA32_CC_FLAGS            = /nologo /c /WX /GS- /W4 /Gs8192 /Gy /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF\r
-  DEBUG_MYTOOLS_IA32_ASM_FLAGS           = /nologo /c /WX /W3 /coff /Cx /Zd /Zi /Zm\r
-RELEASE_MYTOOLS_IA32_ASM_FLAGS           = /nologo /c /WX /W3 /coff /Cx /Zd /Zm\r
+  DEBUG_MYTOOLS_IA32_ASM_FLAGS           = /nologo /c /WX /W3 /coff /Cx /Zd /Zi\r
+RELEASE_MYTOOLS_IA32_ASM_FLAGS           = /nologo /c /WX /W3 /coff /Cx /Zd\r
   DEBUG_MYTOOLS_IA32_DLINK_FLAGS         = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG /PDB:$(DEBUG_DIR)/$(BASE_NAME).pdb\r
 RELEASE_MYTOOLS_IA32_DLINK_FLAGS         = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /MACHINE:I386 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text /PDB:$(DEBUG_DIR)/$(BASE_NAME).pdb\r
       *_MYTOOLS_IA32_ASMLINK_FLAGS       = /nologo /tiny\r
@@ -762,8 +762,8 @@ RELEASE_MYTOOLS_IA32_DLINK_FLAGS         = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /O
 \r
   DEBUG_MYTOOLS_X64_CC_FLAGS             = /nologo /c /WX /GS- /W4 /Gs8192 /Gy /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF /Zi /Gm\r
 RELEASE_MYTOOLS_X64_CC_FLAGS             = /nologo /c /WX /GS- /W4 /Gs8192 /Gy /D UNICODE /O1ib2 /GL /FIAutoGen.h /EHs-c- /GR- /GF\r
-  DEBUG_MYTOOLS_X64_ASM_FLAGS            = /nologo /c /WX /W3 /Cx /Zd /Zi /Zm\r
-RELEASE_MYTOOLS_X64_ASM_FLAGS            = /nologo /c /WX /W3 /Cx /Zd /Zm\r
+  DEBUG_MYTOOLS_X64_ASM_FLAGS            = /nologo /c /WX /W3 /Cx /Zd /Zi\r
+RELEASE_MYTOOLS_X64_ASM_FLAGS            = /nologo /c /WX /W3 /Cx /Zd\r
   DEBUG_MYTOOLS_X64_DLINK_FLAGS          = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /DEBUG\r
 RELEASE_MYTOOLS_X64_DLINK_FLAGS          = /NOLOGO /NODEFAULTLIB /IGNORE:4086 /OPT:REF /OPT:ICF=10 /MAP /ALIGN:32 /Machine:AMD64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:CONSOLE /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.data=.text /MERGE:.rdata=.text\r
 \r