Hi Liming, On 09/27/19 09:46, Liming Gao wrote: > 1. Apply CLANG9 Linker option.
I'm confused by this, in two regards. - Why do we refer to CLANG9 first as being in the GCC toolchain family (see near mmx/sse), and then under a totally different family name (CLANGPE?) - Regarding the CLANGPE option, does the "/ALIGN:4096" option format work on Linux too? (It seems quite unusual). Another question: - There is another XCODE5-specific exception in OvmfPkg, namely TftpDynamicCommand. Does that build OK with CLANG9? > 2. Add -mno-mmx -mno-sse compiler option I think this remark should be clarified -- the options are *excluded* from the CLANG9 build. Thanks Laszlo > > Signed-off-by: Liming Gao <liming....@intel.com> > --- > OvmfPkg/OvmfPkgIa32.dsc | 4 +++- > OvmfPkg/OvmfPkgIa32X64.dsc | 4 +++- > OvmfPkg/OvmfPkgX64.dsc | 4 +++- > 3 files changed, 9 insertions(+), 3 deletions(-) > > diff --git a/OvmfPkg/OvmfPkgIa32.dsc b/OvmfPkg/OvmfPkgIa32.dsc > index 66e944436a..0fde8e6e84 100644 > --- a/OvmfPkg/OvmfPkgIa32.dsc > +++ b/OvmfPkg/OvmfPkgIa32.dsc > @@ -66,7 +66,7 @@ > GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG > INTEL:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG > MSFT:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" && $(TOOL_CHAIN_TAG) != "CLANG9" > GCC:*_*_*_CC_FLAGS = -mno-mmx -mno-sse > !endif > > @@ -80,12 +80,14 @@ > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] > GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > XCODE:*_*_*_DLINK_FLAGS = > + CLANGPE: *_*_*_DLINK_FLAGS = /ALIGN:4096 > > # Force PE/COFF sections to be aligned at 4KB boundaries to support page > level > # protection of DXE_SMM_DRIVER/SMM_CORE modules > [BuildOptions.common.EDKII.DXE_SMM_DRIVER, > BuildOptions.common.EDKII.SMM_CORE] > GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > XCODE:*_*_*_DLINK_FLAGS = > + CLANGPE: *_*_*_DLINK_FLAGS = /ALIGN:4096 > > > ################################################################################ > # > diff --git a/OvmfPkg/OvmfPkgIa32X64.dsc b/OvmfPkg/OvmfPkgIa32X64.dsc > index 51c2bfb44f..c17329878e 100644 > --- a/OvmfPkg/OvmfPkgIa32X64.dsc > +++ b/OvmfPkg/OvmfPkgIa32X64.dsc > @@ -66,7 +66,7 @@ > GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG > INTEL:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG > MSFT:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" && $(TOOL_CHAIN_TAG) != "CLANG9" > GCC:*_*_*_CC_FLAGS = -mno-mmx -mno-sse > !endif > !ifdef $(SOURCE_DEBUG_ENABLE) > @@ -85,12 +85,14 @@ > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] > GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > XCODE:*_*_*_DLINK_FLAGS = > + CLANGPE: *_*_*_DLINK_FLAGS = /ALIGN:4096 > > # Force PE/COFF sections to be aligned at 4KB boundaries to support page > level > # protection of DXE_SMM_DRIVER/SMM_CORE modules > [BuildOptions.common.EDKII.DXE_SMM_DRIVER, > BuildOptions.common.EDKII.SMM_CORE] > GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > XCODE:*_*_*_DLINK_FLAGS = > + CLANGPE: *_*_*_DLINK_FLAGS = /ALIGN:4096 > > > ################################################################################ > # > diff --git a/OvmfPkg/OvmfPkgX64.dsc b/OvmfPkg/OvmfPkgX64.dsc > index ba7a758844..af91265d05 100644 > --- a/OvmfPkg/OvmfPkgX64.dsc > +++ b/OvmfPkg/OvmfPkgX64.dsc > @@ -66,7 +66,7 @@ > GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG > INTEL:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG > MSFT:RELEASE_*_*_CC_FLAGS = /D MDEPKG_NDEBUG > -!if $(TOOL_CHAIN_TAG) != "XCODE5" > +!if $(TOOL_CHAIN_TAG) != "XCODE5" && $(TOOL_CHAIN_TAG) != "CLANG9" > GCC:*_*_*_CC_FLAGS = -mno-mmx -mno-sse > !endif > !ifdef $(SOURCE_DEBUG_ENABLE) > @@ -85,12 +85,14 @@ > [BuildOptions.common.EDKII.DXE_RUNTIME_DRIVER] > GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > XCODE:*_*_*_DLINK_FLAGS = > + CLANGPE: *_*_*_DLINK_FLAGS = /ALIGN:4096 > > # Force PE/COFF sections to be aligned at 4KB boundaries to support page > level > # protection of DXE_SMM_DRIVER/SMM_CORE modules > [BuildOptions.common.EDKII.DXE_SMM_DRIVER, > BuildOptions.common.EDKII.SMM_CORE] > GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 > XCODE:*_*_*_DLINK_FLAGS = > + CLANGPE: *_*_*_DLINK_FLAGS = /ALIGN:4096 > > > ################################################################################ > # > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#48304): https://edk2.groups.io/g/devel/message/48304 Mute This Topic: https://groups.io/mt/34309064/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-