From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mout01.posteo.de (mout01.posteo.de [185.67.36.65]) by mx.groups.io with SMTP id smtpd.web12.5419.1628584083039043002 for ; Tue, 10 Aug 2021 01:28:04 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="body hash did not verify" header.i=@posteo.de header.s=2017 header.b=Qms0PSLu; spf=pass (domain: posteo.de, ip: 185.67.36.65, mailfrom: mhaeuser@posteo.de) Received: from submission (posteo.de [89.146.220.130]) by mout01.posteo.de (Postfix) with ESMTPS id 398E924002E for ; Tue, 10 Aug 2021 10:27:59 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.de; s=2017; t=1628584080; bh=ZYsj5ILP+HS5u40hyAUjiX5r0Wjyg+jYSUq6T1s1mGw=; h=Subject:To:Cc:From:Date:From; b=Qms0PSLu/3APHT1xbUZZc15T9QuxmxS8456q5sXgSuLXU88SuAqH79QEqN/vBz9fz tguCmjolkk6ZAlZPxBn7AxGizSJqiMzzpuU7SyeYK0wDOOZ1JJTmu6b/IBZNR4GpS8 7REUI3ReOvoexjwZf0R8Hp/wr3lv2+UvulLqnw+WYS/H0U/e42Lme2qOLHGiR8BWKq D2RmLxu5Fc4QrdWMzahm7sNbfL+KzckotQKAUgdgKCptBRCC4DMYbFW2x3WOiLdPjI jHuEsoor9LhtlY2iLjVAjSzzeIxSmACJQdV/btbLUmFoONcgpsVBQtH7EIm0mxexF4 ALukO2vFLukdg== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4GkR0Z5ry7z6tmH; Tue, 10 Aug 2021 10:27:58 +0200 (CEST) Subject: Re: [edk2-devel] [PATCH v2 1/2] BaseTools: Define the read-only data section name per toolchain To: devel@edk2.groups.io, afish@apple.com Cc: Bob Feng , Liming Gao , Yuwei Chen , Vitaly Cheptsov References: <252525969122e83d9fb9b83edc95c4f6dfd233b4.1628502434.git.mhaeuser@posteo.de> <7787F470-EEE0-4E13-93C1-508844167749@apple.com> From: =?UTF-8?B?TWFydmluIEjDpHVzZXI=?= Message-ID: Date: Tue, 10 Aug 2021 08:27:57 +0000 MIME-Version: 1.0 In-Reply-To: <7787F470-EEE0-4E13-93C1-508844167749@apple.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: quoted-printable On 10/08/2021 06:19, Andrew Fish via groups.io wrote: > > >> On Aug 9, 2021, at 2:51 AM, Marvin H=C3=A4user > > wrote: >> >> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3318=20 >> >> >> Different toolchains of the EDK II build system may generate ELF or >> Mach-O files, which use the ".rodata" naming convention, or PE/COFF >> files, which use the ".rdata" naming convention. Section permissions >> are chosen based on this name per file format by NASM. To harden >> image permission security, and to save space by avoiding both >> ".rdata" and ".rodata" sections being emitted, expose the appropriate >> name as a preprocessor constant. >> >> Cc: Bob Feng > >> Cc: Liming Gao > > >> Cc: Yuwei Chen > >> Cc: Vitaly Cheptsov > > >> Signed-off-by: Marvin H=C3=A4user > > >> --- >> BaseTools/Conf/tools_def.template | 172 ++++++++++---------- >> 1 file changed, 86 insertions(+), 86 deletions(-) >> >> diff --git a/BaseTools/Conf/tools_def.template=20 >> b/BaseTools/Conf/tools_def.template >> index 2e6b382ab623..84d464916c4d 100755 >> --- a/BaseTools/Conf/tools_def.template >> +++ b/BaseTools/Conf/tools_def.template >> @@ -463,9 +463,9 @@ NOOPT_VS2008_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE >> RELEASE_VS2008_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /WX= /W3 /Cx /coff /Zd >> >> NOOPT_VS2008_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nol= ogo /c /WX /W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2008_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 = -g >> >> -RELEASE_VS2008_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2008_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f w= in32 -g >> >> + =C2=A0DEBUG_VS2008_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 = -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2008_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2008_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f w= in32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2008_IA32_DLINK_FLAGS =C2=A0=C2=A0=3D /NOLOGO /NODEF= AULTLIB=20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2008_IA32_DLINK_FLAGS =C2=A0=C2=A0=3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -495,9 +495,9 @@ NOOPT_VS2008_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D /nologo /c /WX=20 >> /GS- /W4 /Gs32768 /D UNICODE /G >> RELEASE_VS2008_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /C= x /Zd >> >> NOOPT_VS2008_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx = /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2008_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2008_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2008_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g >> >> + =C2=A0DEBUG_VS2008_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2008_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2008_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2008_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB= /IGNORE:4001=20 >> /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2008_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB /IGNORE:4= 001=20 >> /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER=20 >> /MERGE:.rdata=3D.data >> >> @@ -574,9 +574,9 @@ NOOPT_VS2008x86_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE >> RELEASE_VS2008x86_IA32_ASM_FLAGS =C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx = /coff /Zd >> >> NOOPT_VS2008x86_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /W= X /W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2008x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g >> >> -RELEASE_VS2008x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2008x86_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g >> >> + =C2=A0DEBUG_VS2008x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2008x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2008x86_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2008x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB= =20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2008x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -605,9 +605,9 @@ NOOPT_VS2008x86_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE >> RELEASE_VS2008x86_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3= /Cx /Zd >> >> NOOPT_VS2008x86_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo = /c /WX /W3 /Cx /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2008x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2008x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2008x86_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64= -g >> >> + =C2=A0DEBUG_VS2008x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2008x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2008x86_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64= -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2008x86_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULT= LIB=20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2008x86_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -688,9 +688,9 @@ NOOPT_VS2010_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE >> RELEASE_VS2010_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /WX= /W3 /Cx /coff /Zd >> >> NOOPT_VS2010_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nol= ogo /c /WX /W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2010_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 = -g >> >> -RELEASE_VS2010_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2010_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f w= in32 -g >> >> + =C2=A0DEBUG_VS2010_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 = -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2010_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2010_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f w= in32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2010_IA32_DLINK_FLAGS =C2=A0=C2=A0=3D /NOLOGO /NODEF= AULTLIB=20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2010_IA32_DLINK_FLAGS =C2=A0=C2=A0=3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -720,9 +720,9 @@ NOOPT_VS2010_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D /nologo /c /WX=20 >> /GS- /W4 /Gs32768 /D UNICODE /G >> RELEASE_VS2010_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /C= x /Zd >> >> NOOPT_VS2010_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx = /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2010_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2010_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2010_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g >> >> + =C2=A0DEBUG_VS2010_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2010_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2010_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2010_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB= /IGNORE:4001=20 >> /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2010_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB /IGNORE:4= 001=20 >> /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER=20 >> /MERGE:.rdata=3D.data >> >> @@ -799,9 +799,9 @@ NOOPT_VS2010x86_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE >> RELEASE_VS2010x86_IA32_ASM_FLAGS =C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx = /coff /Zd >> >> NOOPT_VS2010x86_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /W= X /W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2010x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g >> >> -RELEASE_VS2010x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2010x86_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g >> >> + =C2=A0DEBUG_VS2010x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2010x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2010x86_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2010x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB= =20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2010x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -831,9 +831,9 @@ NOOPT_VS2010x86_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE >> RELEASE_VS2010x86_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3= /Cx /Zd >> >> NOOPT_VS2010x86_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo = /c /WX /W3 /Cx /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2010x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2010x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2010x86_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64= -g >> >> + =C2=A0DEBUG_VS2010x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2010x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2010x86_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64= -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2010x86_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULT= LIB=20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2010x86_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -913,9 +913,9 @@ NOOPT_VS2012_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D /nologo=20 >> /arch:IA32 /c /WX /GS- /W4 /Gs32768 >> RELEASE_VS2012_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /WX= /W3 /Cx /coff /Zd >> >> NOOPT_VS2012_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nol= ogo /c /WX /W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2012_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 = -g >> >> -RELEASE_VS2012_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2012_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f w= in32 -g >> >> + =C2=A0DEBUG_VS2012_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 = -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2012_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2012_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f w= in32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2012_IA32_DLINK_FLAGS =C2=A0=C2=A0=3D /NOLOGO /NODEF= AULTLIB=20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2012_IA32_DLINK_FLAGS =C2=A0=C2=A0=3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -945,9 +945,9 @@ NOOPT_VS2012_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D /nologo /c /WX=20 >> /GS- /W4 /Gs32768 /D UNICODE /G >> RELEASE_VS2012_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /C= x /Zd >> >> NOOPT_VS2012_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx = /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2012_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2012_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2012_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g >> >> + =C2=A0DEBUG_VS2012_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2012_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2012_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2012_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB= /IGNORE:4001=20 >> /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2012_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB /IGNORE:4= 001=20 >> /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER=20 >> /MERGE:.rdata=3D.data >> >> @@ -1024,9 +1024,9 @@ NOOPT_VS2012x86_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D /nologo=20 >> /arch:IA32 /c /WX /GS- /W4 /Gs32768 >> RELEASE_VS2012x86_IA32_ASM_FLAGS =C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx = /coff /Zd >> >> NOOPT_VS2012x86_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /W= X /W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2012x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g >> >> -RELEASE_VS2012x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2012x86_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g >> >> + =C2=A0DEBUG_VS2012x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2012x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2012x86_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2012x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB= =20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2012x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -1056,9 +1056,9 @@ NOOPT_VS2012x86_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE >> RELEASE_VS2012x86_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3= /Cx /Zd >> >> NOOPT_VS2012x86_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo = /c /WX /W3 /Cx /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2012x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2012x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2012x86_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64= -g >> >> + =C2=A0DEBUG_VS2012x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2012x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2012x86_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64= -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2012x86_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULT= LIB=20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2012x86_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -1138,9 +1138,9 @@ NOOPT_VS2013_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=3D /nologo=20 >> /arch:IA32 /c /WX /GS- /W4 /Gs32768 >> RELEASE_VS2013_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /WX= /W3 /Cx /coff /Zd >> >> NOOPT_VS2013_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nol= ogo /c /WX /W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2013_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 = -g >> >> -RELEASE_VS2013_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2013_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f w= in32 -g >> >> + =C2=A0DEBUG_VS2013_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 = -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2013_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2013_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f w= in32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2013_IA32_DLINK_FLAGS =C2=A0=C2=A0=3D /NOLOGO /NODEF= AULTLIB=20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2013_IA32_DLINK_FLAGS =C2=A0=C2=A0=3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -1170,9 +1170,9 @@ NOOPT_VS2013_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE /G >> RELEASE_VS2013_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /C= x /Zd >> >> NOOPT_VS2013_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx = /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2013_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2013_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2013_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g >> >> + =C2=A0DEBUG_VS2013_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2013_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2013_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2013_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB= /IGNORE:4001=20 >> /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2013_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB /IGNORE:4= 001=20 >> /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER=20 >> /MERGE:.rdata=3D.data >> >> @@ -1249,9 +1249,9 @@ NOOPT_VS2013x86_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D /nologo=20 >> /arch:IA32 /c /WX /GS- /W4 /Gs32768 >> RELEASE_VS2013x86_IA32_ASM_FLAGS =C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx = /coff /Zd >> >> NOOPT_VS2013x86_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /W= X /W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2013x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g >> >> -RELEASE_VS2013x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2013x86_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g >> >> + =C2=A0DEBUG_VS2013x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2013x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2013x86_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2013x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB= =20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2013x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -1281,9 +1281,9 @@ NOOPT_VS2013x86_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE >> RELEASE_VS2013x86_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3= /Cx /Zd >> >> NOOPT_VS2013x86_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo = /c /WX /W3 /Cx /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2013x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2013x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2013x86_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64= -g >> >> + =C2=A0DEBUG_VS2013x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2013x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2013x86_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64= -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2013x86_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULT= LIB=20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2013x86_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -1364,9 +1364,9 @@ NOOPT_VS2015_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=3D /nologo=20 >> /arch:IA32 /c /WX /GS- /W4 /Gs32768 >> RELEASE_VS2015_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /WX= /W3 /Cx /coff /Zd >> >> NOOPT_VS2015_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nol= ogo /c /WX /W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2015_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 = -g >> >> -RELEASE_VS2015_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2015_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f w= in32 -g >> >> + =C2=A0DEBUG_VS2015_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32 = -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2015_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2015_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f w= in32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2015_IA32_DLINK_FLAGS =C2=A0=C2=A0=3D /NOLOGO /NODEF= AULTLIB=20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2015_IA32_DLINK_FLAGS =C2=A0=C2=A0=3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -1396,9 +1396,9 @@ NOOPT_VS2015_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE /G >> RELEASE_VS2015_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /C= x /Zd >> >> NOOPT_VS2015_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx = /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2015_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2015_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2015_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g >> >> + =C2=A0DEBUG_VS2015_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2015_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2015_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2015_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB= /IGNORE:4001=20 >> /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2015_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB /IGNORE:4= 001=20 >> /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER=20 >> /MERGE:.rdata=3D.data >> >> @@ -1476,9 +1476,9 @@ NOOPT_VS2015x86_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D /nologo=20 >> /arch:IA32 /c /WX /GS- /W4 /Gs32768 >> RELEASE_VS2015x86_IA32_ASM_FLAGS =C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx = /coff /Zd >> >> NOOPT_VS2015x86_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /W= X /W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2015x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g >> >> -RELEASE_VS2015x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2015x86_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g >> >> + =C2=A0DEBUG_VS2015x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2015x86_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2015x86_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2015x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB= =20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2015x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -1508,9 +1508,9 @@ NOOPT_VS2015x86_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE >> RELEASE_VS2015x86_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3= /Cx /Zd >> >> NOOPT_VS2015x86_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo = /c /WX /W3 /Cx /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2015x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2015x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2015x86_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64= -g >> >> + =C2=A0DEBUG_VS2015x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2015x86_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2015x86_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64= -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2015x86_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULT= LIB=20 >> /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2015x86_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB=20 >> /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -1586,9 +1586,9 @@ NOOPT_VS2017_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=3D /nologo=20 >> /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D >> RELEASE_VS2017_IA32_ASM_FLAGS =C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx /co= ff /Zd >> >> NOOPT_VS2017_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /= W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2017_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g >> >> -RELEASE_VS2017_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2017_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g >> >> + =C2=A0DEBUG_VS2017_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2017_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2017_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2017_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGN= ORE:4001=20 >> /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2017_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= =20 >> /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER=20 >> /MERGE:.rdata=3D.data >> >> @@ -1616,9 +1616,9 @@ NOOPT_VS2017_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE /G >> RELEASE_VS2017_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /C= x /Zd >> >> NOOPT_VS2017_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c = /WX /W3 /Cx /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2017_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2017_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2017_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g >> >> + =C2=A0DEBUG_VS2017_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2017_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2017_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2017_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB= /IGNORE:4001=20 >> /IGNORE:4281 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2017_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB /IGNORE:4= 001=20 >> /IGNORE:4281 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -1744,9 +1744,9 @@ NOOPT_VS2019_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=3D /nologo=20 >> /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D >> RELEASE_VS2019_IA32_ASM_FLAGS =C2=A0=C2=A0=3D /nologo /c /WX /W3 /Cx /co= ff /Zd >> >> NOOPT_VS2019_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /= W3 /Cx /coff /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2019_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g >> >> -RELEASE_VS2019_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 >> >> -NOOPT_VS2019_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g >> >> + =C2=A0DEBUG_VS2019_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2019_IA32_NASM_FLAGS =C2=A0=3D -Ox -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2019_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=3D -O0 -f win32 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2019_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGN= ORE:4001=20 >> /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2019_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= =20 >> /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER=20 >> /MERGE:.rdata=3D.data >> >> @@ -1774,9 +1774,9 @@ NOOPT_VS2019_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D /nologo /c=20 >> /WX /GS- /W4 /Gs32768 /D UNICODE /G >> RELEASE_VS2019_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=3D /nologo /c /WX /W3 /C= x /Zd >> >> NOOPT_VS2019_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D /nologo /c = /WX /W3 /Cx /Zd /Zi >> >> >> >> - =C2=A0DEBUG_VS2019_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g >> >> -RELEASE_VS2019_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 >> >> -NOOPT_VS2019_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g >> >> + =C2=A0DEBUG_VS2019_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64 -g=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +RELEASE_VS2019_X64_NASM_FLAGS =C2=A0=C2=A0=3D -Ox -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> +NOOPT_VS2019_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D -O0 -f win64 -g= =20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> >> >> =C2=A0=C2=A0DEBUG_VS2019_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB= /IGNORE:4001=20 >> /IGNORE:4281 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D=20 >> /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)=20 >> /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >> >> RELEASE_VS2019_X64_DLINK_FLAGS =C2=A0=3D /NOLOGO /NODEFAULTLIB /IGNORE:4= 001=20 >> /IGNORE:4281 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32=20 >> /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL=20 >> /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER=20 >> /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >> >> @@ -2030,7 +2030,7 @@ DEFINE GCC_PP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -E=20 >> -x assembler-with-cpp -include A >> *_GCC48_IA32_DLINK2_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D DEF(GCC48_IA32_DLINK2_FLAGS) >> >> *_GCC48_IA32_RC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_IA32_RC_FLAGS) >> >> *_GCC48_IA32_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D >> >> -*_GCC48_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D -f elf32 >> >> +*_GCC48_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D -f elf32=20 >> -DRODATA_SECTION_NAME=3D.rodata >> >> >> >> =C2=A0=C2=A0DEBUG_GCC48_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D DEF(GCC48_IA32_CC_FLAGS) -Os >> >> RELEASE_GCC48_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(= GCC48_IA32_CC_FLAGS) -Os=20 >> -Wno-unused-but-set-variable >> >> @@ -2058,7 +2058,7 @@ RELEASE_GCC48_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D=20 >> DEF(GCC48_IA32_CC_FLAGS) -Os -Wno-unused-but >> *_GCC48_X64_DLINK2_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D DEF(GCC48_X64_DLINK2_FLAGS) >> >> *_GCC48_X64_RC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_X64_RC_FLAGS) >> >> *_GCC48_X64_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D >> >> -*_GCC48_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D -f elf64 >> >> +*_GCC48_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D -f elf64=20 >> -DRODATA_SECTION_NAME=3D.rodata >> >> >> >> =C2=A0=C2=A0DEBUG_GCC48_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D DEF(GCC48_X64_CC_FLAGS) -Os >> >> RELEASE_GCC48_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(G= CC48_X64_CC_FLAGS) -Os=20 >> -Wno-unused-but-set-variable >> >> @@ -2170,7 +2170,7 @@ RELEASE_GCC48_AARCH64_CC_FLAGS =C2=A0=C2=A0=3D=20 >> DEF(GCC48_AARCH64_CC_FLAGS) -Wno-unused-but-s >> *_GCC49_IA32_DLINK2_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D DEF(GCC49_IA32_DLINK2_FLAGS) >> >> *_GCC49_IA32_RC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_IA32_RC_FLAGS) >> >> *_GCC49_IA32_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D >> >> -*_GCC49_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D -f elf32 >> >> +*_GCC49_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D -f elf32=20 >> -DRODATA_SECTION_NAME=3D.rodata >> >> >> >> =C2=A0=C2=A0DEBUG_GCC49_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D DEF(GCC49_IA32_CC_FLAGS) -Os >> >> RELEASE_GCC49_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(= GCC49_IA32_CC_FLAGS) -Os=20 >> -Wno-unused-but-set-variable -Wno-unused-const-variable >> >> @@ -2198,7 +2198,7 @@ RELEASE_GCC49_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D=20 >> DEF(GCC49_IA32_CC_FLAGS) -Os -Wno-unused-but >> *_GCC49_X64_DLINK2_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D DEF(GCC49_X64_DLINK2_FLAGS) >> >> *_GCC49_X64_RC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_X64_RC_FLAGS) >> >> *_GCC49_X64_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D >> >> -*_GCC49_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D -f elf64 >> >> +*_GCC49_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D -f elf64=20 >> -DRODATA_SECTION_NAME=3D.rodata >> >> >> >> =C2=A0=C2=A0DEBUG_GCC49_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D DEF(GCC49_X64_CC_FLAGS) -Os >> >> RELEASE_GCC49_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(G= CC49_X64_CC_FLAGS) -Os=20 >> -Wno-unused-but-set-variable -Wno-unused-const-variable >> >> @@ -2316,7 +2316,7 @@ RELEASE_GCC49_AARCH64_DLINK_XIPFLAGS =3D -z=20 >> common-page-size=3D0x20 >> *_GCC5_IA32_DLINK2_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D DEF(GCC5_IA32_DLINK2_FLAGS) -no-pie >> >> *_GCC5_IA32_RC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_IA32_RC_FLAGS) >> >> *_GCC5_IA32_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D >> >> -*_GCC5_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D -f elf32 >> >> +*_GCC5_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D -f elf32=20 >> -DRODATA_SECTION_NAME=3D.rodata >> >> >> >> =C2=A0=C2=A0DEBUG_GCC5_IA32_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D DEF(GCC5_IA32_CC_FLAGS) -flto -Os >> >> =C2=A0=C2=A0DEBUG_GCC5_IA32_DLINK_FLAGS =C2=A0=C2=A0=C2=A0=3D DEF(GCC5_I= A32_X64_DLINK_FLAGS)=20 >> -flto -Os -Wl,-m,elf_i386,--oformat=3Delf32-i386 >> >> @@ -2348,7 +2348,7 @@ RELEASE_GCC5_IA32_DLINK_FLAGS =C2=A0=C2=A0=C2=A0= =3D=20 >> DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Os -Wl, >> *_GCC5_X64_DLINK2_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=3D DEF(GCC5_X64_DLINK2_FLAGS) >> >> *_GCC5_X64_RC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_X64_RC_FLAGS) >> >> *_GCC5_X64_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D >> >> -*_GCC5_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D -f elf64 >> >> +*_GCC5_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D -f elf64=20 >> -DRODATA_SECTION_NAME=3D.rodata >> >> >> >> =C2=A0=C2=A0DEBUG_GCC5_X64_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=3D DEF(GCC5_X64_CC_FLAGS) -flto=20 >> -DUSING_LTO -Os >> >> =C2=A0=C2=A0DEBUG_GCC5_X64_DLINK_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(G= CC5_X64_DLINK_FLAGS) -flto -Os >> >> @@ -2589,7 +2589,7 @@ DEFINE CLANG38_ALL_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=3D=20 >> DEF(GCC48_ALL_CC_FLAGS) DEF(CLANG38_WARNIN >> *_CLANG38_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC5_ASM_FLAGS) -m32=20 >> -march=3Di386 DEF(CLANG38_IA32_TARGET) >> >> *_CLANG38_IA32_RC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_IA32_RC_FLAGS) >> >> *_CLANG38_IA32_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =3D >> >> -*_CLANG38_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D -f elf32 >> >> +*_CLANG38_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D -f elf32=20 >> -DRODATA_SECTION_NAME=3D.rodata >> >> *_CLANG38_IA32_PP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_PP_FLAGS)=20 >> DEF(CLANG38_IA32_TARGET) >> >> *_CLANG38_IA32_ASLPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=3D DEF(GCC_ASLPP_FLAGS)=20 >> DEF(CLANG38_IA32_TARGET) >> >> *_CLANG38_IA32_VFRPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=3D DEF(GCC_VFRPP_FLAGS)=20 >> DEF(CLANG38_IA32_TARGET) >> >> @@ -2626,7 +2626,7 @@ NOOPT_CLANG38_IA32_DLINK2_FLAGS =C2=A0=C2=A0=C2=A0= =C2=A0=3D=20 >> DEF(GCC5_IA32_DLINK2_FLAGS) -O0 >> *_CLANG38_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D DEF(GCC5_ASM_FLAGS) -m64=20 >> DEF(CLANG38_X64_TARGET) >> >> *_CLANG38_X64_RC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_X64_RC_FLAGS) >> >> *_CLANG38_X64_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =3D >> >> -*_CLANG38_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D -f elf64 >> >> +*_CLANG38_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D -f elf64=20 >> -DRODATA_SECTION_NAME=3D.rodata >> >> *_CLANG38_X64_PP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_PP_FLAGS)=20 >> DEF(CLANG38_X64_TARGET) >> >> *_CLANG38_X64_ASLPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=3D DEF(GCC_ASLPP_FLAGS)=20 >> DEF(CLANG38_X64_TARGET) >> >> *_CLANG38_X64_VFRPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=3D DEF(GCC_VFRPP_FLAGS)=20 >> DEF(CLANG38_X64_TARGET) >> >> @@ -2777,7 +2777,7 @@ DEFINE CLANGPDB_ALL_CC_FLAGS =C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=3D=20 >> DEF(GCC48_ALL_CC_FLAGS) DEF(CLANGPDB_WARN >> *_CLANGPDB_IA32_ASLCC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D DEF(GCC_ASLCC_FLAGS) -m32=20 >> -fno-lto DEF(CLANGPDB_IA32_TARGET) >> >> *_CLANGPDB_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_ASM_FLAGS) -m32=20 >> -march=3Di386 DEF(CLANGPDB_IA32_TARGET) >> >> *_CLANGPDB_IA32_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =3D >> >> -*_CLANGPDB_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D -f win32 >> >> +*_CLANGPDB_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D -f win32=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> *_CLANGPDB_IA32_PP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_PP_FLAGS)=20 >> DEF(CLANGPDB_IA32_TARGET) >> >> *_CLANGPDB_IA32_ASLPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D DEF(GCC_ASLPP_FLAGS)=20 >> DEF(CLANGPDB_IA32_TARGET) >> >> *_CLANGPDB_IA32_VFRPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D DEF(GCC_VFRPP_FLAGS)=20 >> DEF(CLANGPDB_IA32_TARGET) >> >> @@ -2811,7 +2811,7 @@ NOOPT_CLANGPDB_IA32_DLINK2_FLAGS =C2=A0=C2=A0=C2= =A0=C2=A0=3D >> *_CLANGPDB_X64_ASLCC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=3D DEF(GCC_ASLCC_FLAGS) -m64=20 >> -fno-lto DEF(CLANGPDB_X64_TARGET) >> >> *_CLANGPDB_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_ASM_FLAGS) -m64=20 >> DEF(CLANGPDB_X64_TARGET) >> >> *_CLANGPDB_X64_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =3D >> >> -*_CLANGPDB_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D -f win64 >> >> +*_CLANGPDB_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=3D -f win64=20 >> -DRODATA_SECTION_NAME=3D.rdata >> >> *_CLANGPDB_X64_PP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_PP_FLAGS)=20 >> DEF(CLANGPDB_X64_TARGET) >> >> *_CLANGPDB_X64_ASLPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=3D DEF(GCC_ASLPP_FLAGS)=20 >> DEF(CLANGPDB_X64_TARGET) >> >> *_CLANGPDB_X64_VFRPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=3D DEF(GCC_VFRPP_FLAGS)=20 >> DEF(CLANGPDB_X64_TARGET) >> >> @@ -2878,7 +2878,7 @@ DEFINE CLANGDWARF_X64_DLINK2_FLAGS =C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=3D=20 >> -Wl,--defsym=3DPECOFF_HEADER_SIZE=3D0x22 >> *_CLANGDWARF_IA32_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC5_ASM_FLAGS) -m32=20 >> -march=3Di386 DEF(CLANG38_IA32_TARGET) >> >> *_CLANGDWARF_IA32_RC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_IA32_RC_FLAGS) >> >> *_CLANGDWARF_IA32_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D >> >> -*_CLANGDWARF_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D -f elf32 >> >> +*_CLANGDWARF_IA32_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D -f elf32=20 >> -DRODATA_SECTION_NAME=3D.rodata >> >> *_CLANGDWARF_IA32_PP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_PP_FLAGS)=20 >> DEF(CLANG38_IA32_TARGET) >> >> *_CLANGDWARF_IA32_ASLPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D DEF(GCC_ASLPP_FLAGS)=20 >> DEF(CLANG38_IA32_TARGET) >> >> *_CLANGDWARF_IA32_VFRPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D DEF(GCC_VFRPP_FLAGS)=20 >> DEF(CLANG38_IA32_TARGET) >> >> @@ -2914,7 +2914,7 @@ NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS =C2=A0=C2=A0=C2= =A0=C2=A0=3D=20 >> DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O0 - >> *_CLANGDWARF_X64_ASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC5_ASM_FLAGS) -m64=20 >> DEF(CLANG38_X64_TARGET) >> >> *_CLANGDWARF_X64_RC_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_X64_RC_FLAGS) >> >> *_CLANGDWARF_X64_OBJCOPY_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=3D >> >> -*_CLANGDWARF_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D -f elf64 >> >> +*_CLANGDWARF_X64_NASM_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=3D -f elf64=20 >> -DRODATA_SECTION_NAME=3D.rodata >> >> *_CLANGDWARF_X64_PP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=3D DEF(GCC_PP_FLAGS)=20 >> DEF(CLANG38_X64_TARGET) >> >> *_CLANGDWARF_X64_ASLPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D DEF(GCC_ASLPP_FLAGS)=20 >> DEF(CLANG38_X64_TARGET) >> >> *_CLANGDWARF_X64_VFRPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D DEF(GCC_VFRPP_FLAGS)=20 >> DEF(CLANG38_X64_TARGET) >> >> @@ -2985,7 +2985,7 @@ RELEASE_XCODE5_IA32_DLINK_FLAGS =C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D -arch=20 >> i386 -u _$(IMAGE_ENTRY_POINT) -e _$ >> =C2=A0=C2=A0DEBUG_XCODE5_IA32_ASM_FLAGS =C2=A0=3D -arch i386 -g >> >> =C2=A0=C2=A0NOOPT_XCODE5_IA32_ASM_FLAGS =C2=A0=3D -arch i386 -g >> >> RELEASE_XCODE5_IA32_ASM_FLAGS =C2=A0=3D -arch i386 >> >> - =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0*_XCODE5_IA32_NASM_FLAGS =3D -f macho32 >> >> + =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0*_XCODE5_IA32_NASM_FLAGS =3D -f macho32= =20 >> -DRODATA_SECTION_NAME=3D.rodata >> >> >> > > An EFI Mach-O file does not contain a .rodata section. A Mach-O=20 > contains a __DATA segment that is broken up into sections. For a=20 > typical EFI image there are __const, __data, __bss sections in the=20 > __DATA segment [1]. Yes, and ".rodata" is almost a synonym for "__DATA,__const", with a=20 small exception [1]. Maybe it'd be clearer if the macro was renamed to=20 "NASM_RODATA_SECTION_NAME", to indicate this is not just a "raw" name,=20 but NASM gives it a semantic meaning? > > The mtoc [2] tool used to convert mach-O to PE/COFF converts the=20 > entire __DATA segment (__const, __data, and __bss) into the .data=20 > section. Thus adding any kind of new data section is a no-op at best. This is a part I missed, because I do not have an Xcode toolchain at=20 hand, so thanks for investigating. However this, in my opinion, is a=20 flaw with Mach-O/mtoc and not with my patch. It seems like the only=20 difference between __TEXT,__const and __DATA,__const is whether the data=20 is targeted by a relocation or not. Such a concept does not exist for=20 PE/COFF (and I think not even for ELF, but I'm not too familiar with=20 it), thus the logical PE/COFF section __DATA,__const should be merged=20 into is .rdata (and .rdata may or may not be merged into .text in an=20 earlier step, I assume transitivity). I could change the macro=20 definition to explicitly declare __TEXT,__const, but that would still=20 put the compiler-emitted data in the wrong section. Does Xcode provide=20 anything remotely similar to GNU linker scripts which we can use to move=20 the section? Please also note that .rodata is used for Xcode-based toolchains already=20 (in fact, all toolchains, and this is the issue), I'm not regressing=20 anything. I just expected it to work fine as-is. This patch mainly fixed=20 PE/COFF-based toolchains, which get both .rdata from the compiler and=20 .rodata with RX permissions from NASM, because ".rodata" only has a=20 semantic meaning for ELF and Mach-O outputs, but not for PE/COFF. > > If you want something to be read only for Xcode/clang you are better=20 > off putting it in the __TEXT section [3]. The __TEXT section is read=20 > only and for X64 can not even contain relocations. Well, this kind of is an issue. We would need to introduce an arbitrary=20 constraint on the relocation part that holds only for Xcode-based=20 toolchains. Does the compiler emit an error when data in __TEXT,__const=20 is targeted by a relocation? Also see above regarding compiler-emitted=20 __DATA,__const. Thanks for your notes and insight! Best regards, Marvin [1] "For compatibility with other Unix platforms, the following standard=20 names are also supported: [...] .rodata=C2=A0 =3D __DATA,__const data [...] If the .rodata section contains no relocations, it is instead put into=20 the __TEXT,__const section unless this section has already been=20 specified explicitly." https://www.nasm.us/xdoc/2.13.01/html/nasmdoc7.html > > [1] otool -lh DxeCore.dll > ... > Load command 1 > =C2=A0 =C2=A0 =C2=A0 cmd LC_SEGMENT_64 > =C2=A0 cmdsize 312 > =C2=A0 segname __DATA > =C2=A0=C2=A0 vmaddr 0x000000000002b000 > =C2=A0=C2=A0 vmsize 0x0000000000147000 > =C2=A0 fileoff 180224 > =C2=A0filesize 8192 > =C2=A0 maxprot 0x00000003 > =C2=A0initprot 0x00000003 > =C2=A0=C2=A0 nsects 3 > =C2=A0 =C2=A0 flags 0x0 > Section > =C2=A0 sectname __const > =C2=A0=C2=A0 segname __DATA > =C2=A0 =C2=A0 =C2=A0 addr 0x000000000002b000 > =C2=A0 =C2=A0 =C2=A0 size 0x0000000000000718 > =C2=A0 =C2=A0 offset 180224 > =C2=A0=C2=A0 =C2=A0 align 2^4 (16) > =C2=A0 =C2=A0 reloff 0 > =C2=A0 =C2=A0 nreloc 0 > =C2=A0=C2=A0 =C2=A0 flags 0x00000000 > =C2=A0reserved1 0 > =C2=A0reserved2 0 > Section > =C2=A0 sectname __data > =C2=A0=C2=A0 segname __DATA > =C2=A0 =C2=A0 =C2=A0 addr 0x000000000002b720 > =C2=A0 =C2=A0 =C2=A0 size 0x00000000000014f0 > =C2=A0 =C2=A0 offset 182048 > =C2=A0=C2=A0 =C2=A0 align 2^4 (16) > =C2=A0 =C2=A0 reloff 0 > =C2=A0 =C2=A0 nreloc 0 > =C2=A0=C2=A0 =C2=A0 flags 0x00000000 > =C2=A0reserved1 0 > =C2=A0reserved2 0 > Section > =C2=A0 sectname __bss > =C2=A0=C2=A0 segname __DATA > =C2=A0 =C2=A0 =C2=A0 addr 0x000000000002cc10 > =C2=A0 =C2=A0 =C2=A0 size 0x0000000000144e11 > =C2=A0 =C2=A0 offset 0 > =C2=A0=C2=A0 =C2=A0 align 2^4 (16) > =C2=A0 =C2=A0 reloff 0 > =C2=A0 =C2=A0 nreloc 0 > =C2=A0=C2=A0 =C2=A0 flags 0x00000001 > =C2=A0reserved1 0 > =C2=A0reserved2 0 > =E2=80=A6 > > [2]=20 > https://opensource.apple.com/source/cctools/cctools-698/efitools/mtoc.c.a= uto.html=20 > =20 > > > [3] otool more output=E2=80=A6 > Load command 0 > =C2=A0 =C2=A0 =C2=A0 cmd LC_SEGMENT_64 > =C2=A0 cmdsize 392 > =C2=A0 segname __TEXT > =C2=A0=C2=A0 vmaddr 0x0000000000000240 > =C2=A0=C2=A0 vmsize 0x00000000000296c0 > =C2=A0 fileoff 1184 > =C2=A0filesize 169664 > =C2=A0 maxprot 0x00000005 > =C2=A0initprot 0x00000005 > =C2=A0=C2=A0 nsects 4 > =C2=A0 =C2=A0 flags 0x0 > Section > =C2=A0 sectname __text > =C2=A0=C2=A0 segname __TEXT > =C2=A0 =C2=A0 =C2=A0 addr 0x0000000000000240 > =C2=A0 =C2=A0 =C2=A0 size 0x000000000002489f > =C2=A0 =C2=A0 offset 1184 > =C2=A0=C2=A0 =C2=A0 align 2^3 (8) > =C2=A0 =C2=A0 reloff 0 > =C2=A0 =C2=A0 nreloc 0 > =C2=A0=C2=A0 =C2=A0 flags 0x80000400 > =C2=A0reserved1 0 > =C2=A0reserved2 0 > Section > =C2=A0 sectname __cstring > =C2=A0=C2=A0 segname __TEXT > =C2=A0 =C2=A0 =C2=A0 addr 0x0000000000024ae0 > =C2=A0 =C2=A0 =C2=A0 size 0x000000000000496d > =C2=A0 =C2=A0 offset 150848 > =C2=A0=C2=A0 =C2=A0 align 2^4 (16) > =C2=A0 =C2=A0 reloff 0 > =C2=A0 =C2=A0 nreloc 0 > =C2=A0=C2=A0 =C2=A0 flags 0x00000002 > =C2=A0reserved1 0 > =C2=A0reserved2 0 > Section > =C2=A0 sectname __ustring > =C2=A0=C2=A0 segname __TEXT > =C2=A0 =C2=A0 =C2=A0 addr 0x000000000002944e > =C2=A0 =C2=A0 =C2=A0 size 0x0000000000000048 > =C2=A0 =C2=A0 offset 169646 > =C2=A0=C2=A0 =C2=A0 align 2^1 (2) > =C2=A0 =C2=A0 reloff 0 > =C2=A0 =C2=A0 nreloc 0 > =C2=A0=C2=A0 =C2=A0 flags 0x00000000 > =C2=A0reserved1 0 > =C2=A0reserved2 0 > Section > =C2=A0 sectname __const > =C2=A0=C2=A0 segname __TEXT > =C2=A0 =C2=A0 =C2=A0 addr 0x00000000000294a0 > =C2=A0 =C2=A0 =C2=A0 size 0x0000000000000448 > =C2=A0 =C2=A0 offset 169728 > =C2=A0=C2=A0 =C2=A0 align 2^4 (16) > =C2=A0 =C2=A0 reloff 0 > =C2=A0 =C2=A0 nreloc 0 > =C2=A0=C2=A0 =C2=A0 flags 0x00000000 > =C2=A0reserved1 0 > =C2=A0reserved2 0 > > Thanks, > > Andrew Fish > >> >> >> =C2=A0=C2=A0DEBUG_XCODE5_IA32_CC_FLAGS =C2=A0=C2=A0=3D -arch i386 -c -g = -Os =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0-Wall=20 >> -Werror -include AutoGen.h -funsigned-char -fno-stack-protector=20 >> -fno-builtin -fshort-wchar -fasm-blocks -mdynamic-no-pic=20 >> -mno-implicit-float -mms-bitfields -msoft-float -Wno-unused-parameter=20 >> -Wno-missing-braces -Wno-missing-field-initializers=20 >> -Wno-tautological-compare -Wno-sign-compare -Wno-varargs=20 >> -ftrap-function=3Dundefined_behavior_has_been_optimized_away_by_clang=20 >> $(PLATFORM_FLAGS) >> >> @@ -3003,7 +3003,7 @@ RELEASE_XCODE5_X64_DLINK_FLAGS =C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=3D -arch=20 >> x86_64 -u _$(IMAGE_ENTRY_POINT) -e _ >> =C2=A0=C2=A0DEBUG_XCODE5_X64_ASM_FLAGS =C2=A0=3D -arch x86_64 -g >> >> =C2=A0=C2=A0NOOPT_XCODE5_X64_ASM_FLAGS =C2=A0=3D -arch x86_64 -g >> >> RELEASE_XCODE5_X64_ASM_FLAGS =C2=A0=3D -arch x86_64 >> >> - =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0*_XCODE5_X64_NASM_FLAGS =3D -f macho64 >> >> + =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0*_XCODE5_X64_NASM_FLAGS =3D -f macho64 -= DRODATA_SECTION_NAME=3D.rodata >> >> *_XCODE5_*_PP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D = -E -x assembler-with-cpp -include AutoGen.h >> >> *_XCODE5_*_VFRPP_FLAGS =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D -x c -E -P -DVF= RCOMPILE -include=20 >> $(MODULE_NAME)StrDefs.h >> >> >> >> --=20 >> 2.31.1 >> >> >> >> >> >> >> > >=20