From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from ma1-aaemail-dr-lapp02.apple.com (ma1-aaemail-dr-lapp02.apple.com [17.171.2.68]) by mx.groups.io with SMTP id smtpd.web09.3867.1628569175455771080 for ; Mon, 09 Aug 2021 21:19:35 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@apple.com header.s=20180706 header.b=BmH//mX/; spf=pass (domain: apple.com, ip: 17.171.2.68, mailfrom: afish@apple.com) Received: from pps.filterd (ma1-aaemail-dr-lapp02.apple.com [127.0.0.1]) by ma1-aaemail-dr-lapp02.apple.com (8.16.0.42/8.16.0.42) with SMTP id 17A4DV9h018413; Mon, 9 Aug 2021 21:19:18 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apple.com; h=from : message-id : content-type : mime-version : subject : date : in-reply-to : cc : to : references; s=20180706; bh=GnIz0H9dN+wKQnQseCABKvWUYtRxrBdETh2PMuSTUZo=; b=BmH//mX/LCcQgayBn37rWLOBdQ2VQTBzmsz3twOSeYiKcAPqMNsYBhyd7MKoWyrnYBWp HVBxPllXAQtT4lHRvZ3Nz+4Z1Eaq0o103EeZfKK0CpAk8k8Fd8ui2/VyIgeGbyho6Lzf P5xqd6dDQvfepCM3Jl/b8dhK8L3d2On1TFCBFWj9dunMSRaO27zEYa2oh3kOTpaINEdj oFiZNprE4/NEKZb6g7G1ie8ydHI2PVaJm+7mkERjFKXCK0sT9kQyVq/pzvDTYJEbpzOy 4MpjJyXqHl2XpGTDJtQT5B1DLARHAkFtXfNVbR2i7svE14VWI94k+KirEIH799Gllbiz KQ== Received: from rn-mailsvcp-mta-lapp02.rno.apple.com (rn-mailsvcp-mta-lapp02.rno.apple.com [10.225.203.150]) by ma1-aaemail-dr-lapp02.apple.com with ESMTP id 3a9pus8y3j-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO); Mon, 09 Aug 2021 21:19:17 -0700 Received: from rn-mailsvcp-mmp-lapp04.rno.apple.com (rn-mailsvcp-mmp-lapp04.rno.apple.com [17.179.253.17]) by rn-mailsvcp-mta-lapp02.rno.apple.com (Oracle Communications Messaging Server 8.1.0.9.20210415 64bit (built Apr 15 2021)) with ESMTPS id <0QXL00I1YW05DE80@rn-mailsvcp-mta-lapp02.rno.apple.com>; Mon, 09 Aug 2021 21:19:17 -0700 (PDT) Received: from process_milters-daemon.rn-mailsvcp-mmp-lapp04.rno.apple.com by rn-mailsvcp-mmp-lapp04.rno.apple.com (Oracle Communications Messaging Server 8.1.0.9.20210415 64bit (built Apr 15 2021)) id <0QXL00N00VY00U00@rn-mailsvcp-mmp-lapp04.rno.apple.com>; Mon, 09 Aug 2021 21:19:17 -0700 (PDT) X-Va-A: X-Va-T-CD: 9ad46be6e1c3c1a24e92ea4dad46d58d X-Va-E-CD: f4d0bb655782ab825c7a9328fb164ddf X-Va-R-CD: c72241e6c7ad74ea4fd9f173994aebfa X-Va-CD: 0 X-Va-ID: eee5d6cf-032e-420b-acf4-38955d88b2b5 X-V-A: X-V-T-CD: 9ad46be6e1c3c1a24e92ea4dad46d58d X-V-E-CD: f4d0bb655782ab825c7a9328fb164ddf X-V-R-CD: c72241e6c7ad74ea4fd9f173994aebfa X-V-CD: 0 X-V-ID: 0e532f7e-af92-45e0-8c65-fc0a46d6d85c X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.391,18.0.790 definitions=2021-08-10_01:2021-08-06,2021-08-10 signatures=0 Received: from [17.235.18.207] (unknown [17.235.18.207]) by rn-mailsvcp-mmp-lapp04.rno.apple.com (Oracle Communications Messaging Server 8.1.0.9.20210415 64bit (built Apr 15 2021)) with ESMTPSA id <0QXL00ZNPW034T00@rn-mailsvcp-mmp-lapp04.rno.apple.com>; Mon, 09 Aug 2021 21:19:16 -0700 (PDT) From: "Andrew Fish" Message-id: <7787F470-EEE0-4E13-93C1-508844167749@apple.com> MIME-version: 1.0 (Mac OS X Mail 14.0 \(3654.20.0.2.1\)) Subject: Re: [edk2-devel] [PATCH v2 1/2] BaseTools: Define the read-only data section name per toolchain Date: Mon, 09 Aug 2021 21:19:14 -0700 In-reply-to: <252525969122e83d9fb9b83edc95c4f6dfd233b4.1628502434.git.mhaeuser@posteo.de> Cc: Bob Feng , Liming Gao , Yuwei Chen , Vitaly Cheptsov To: edk2-devel-groups-io , =?utf-8?Q?Marvin_H=C3=A4user?= References: <252525969122e83d9fb9b83edc95c4f6dfd233b4.1628502434.git.mhaeuser@posteo.de> X-Mailer: Apple Mail (2.3654.20.0.2.1) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.391,18.0.790 definitions=2021-08-10_01:2021-08-06,2021-08-10 signatures=0 Content-type: multipart/alternative; boundary="Apple-Mail=_5E3890A4-D15D-4E39-BCF7-7B698B4BCFB1" --Apple-Mail=_5E3890A4-D15D-4E39-BCF7-7B698B4BCFB1 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Aug 9, 2021, at 2:51 AM, Marvin H=C3=A4user wrote= : >=20 > 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. >=20 > 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(-) >=20 > diff --git a/BaseTools/Conf/tools_def.template 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 =3D /nologo /c /WX = /GS- /W4 /Gs32768 /D UNICODE > RELEASE_VS2008_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2008_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /Z= i >=20 >=20 >=20 > - DEBUG_VS2008_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2008_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2008_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2008_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_N= AME=3D.rdata >=20 > +RELEASE_VS2008_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2008_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_N= AME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2008_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 = /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /= MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERV= ICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2008_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 = /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTI= ON:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:= EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -495,9 +495,9 @@ NOOPT_VS2008_X64_CC_FLAGS =3D /nologo /c /WX /G= S- /W4 /Gs32768 /D UNICODE /G > RELEASE_VS2008_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2008_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2008_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2008_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2008_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2008_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +RELEASE_VS2008_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2008_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 >=20 >=20 > DEBUG_VS2008_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /O= PT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Ma= chine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVIC= E_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2008_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /I= GNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION= :.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EF= I_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -574,9 +574,9 @@ NOOPT_VS2008x86_IA32_CC_FLAGS =3D /nologo /c /WX= /GS- /W4 /Gs32768 /D UNICODE > RELEASE_VS2008x86_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2008x86_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /= Zi >=20 >=20 >=20 > - DEBUG_VS2008x86_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2008x86_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2008x86_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2008x86_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 > +RELEASE_VS2008x86_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +NOOPT_VS2008x86_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2008x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D = /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SER= VICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2008x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECT= ION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM= :EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -605,9 +605,9 @@ NOOPT_VS2008x86_X64_CC_FLAGS =3D /nologo /c /WX= /GS- /W4 /Gs32768 /D UNICODE > RELEASE_VS2008x86_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2008x86_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2008x86_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2008x86_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2008x86_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2008x86_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 > +RELEASE_VS2008x86_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +NOOPT_VS2008x86_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2008x86_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D = /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SER= VICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2008x86_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECT= ION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM= :EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -688,9 +688,9 @@ NOOPT_VS2010_IA32_CC_FLAGS =3D /nologo /c /WX = /GS- /W4 /Gs32768 /D UNICODE > RELEASE_VS2010_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2010_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /Z= i >=20 >=20 >=20 > - DEBUG_VS2010_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2010_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2010_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2010_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_N= AME=3D.rdata >=20 > +RELEASE_VS2010_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2010_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_N= AME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2010_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 = /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /= MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERV= ICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2010_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 = /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTI= ON:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:= EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -720,9 +720,9 @@ NOOPT_VS2010_X64_CC_FLAGS =3D /nologo /c /WX /G= S- /W4 /Gs32768 /D UNICODE /G > RELEASE_VS2010_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2010_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2010_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2010_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2010_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2010_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +RELEASE_VS2010_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2010_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 >=20 >=20 > DEBUG_VS2010_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /O= PT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Ma= chine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVIC= E_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2010_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /I= GNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION= :.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EF= I_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -799,9 +799,9 @@ NOOPT_VS2010x86_IA32_CC_FLAGS =3D /nologo /c /WX= /GS- /W4 /Gs32768 /D UNICODE > RELEASE_VS2010x86_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2010x86_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /= Zi >=20 >=20 >=20 > - DEBUG_VS2010x86_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2010x86_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2010x86_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2010x86_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 > +RELEASE_VS2010x86_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +NOOPT_VS2010x86_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2010x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D = /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SER= VICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2010x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECT= ION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM= :EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -831,9 +831,9 @@ NOOPT_VS2010x86_X64_CC_FLAGS =3D /nologo /c /WX= /GS- /W4 /Gs32768 /D UNICODE > RELEASE_VS2010x86_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2010x86_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2010x86_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2010x86_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2010x86_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2010x86_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 > +RELEASE_VS2010x86_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +NOOPT_VS2010x86_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2010x86_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D = /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SER= VICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2010x86_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECT= ION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM= :EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -913,9 +913,9 @@ NOOPT_VS2012_IA32_CC_FLAGS =3D /nologo /arch:I= A32 /c /WX /GS- /W4 /Gs32768 > RELEASE_VS2012_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2012_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /Z= i >=20 >=20 >=20 > - DEBUG_VS2012_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2012_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2012_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2012_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_N= AME=3D.rdata >=20 > +RELEASE_VS2012_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2012_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_N= AME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2012_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 = /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /= MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERV= ICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2012_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 = /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTI= ON:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:= EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -945,9 +945,9 @@ NOOPT_VS2012_X64_CC_FLAGS =3D /nologo /c /WX /G= S- /W4 /Gs32768 /D UNICODE /G > RELEASE_VS2012_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2012_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2012_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2012_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2012_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2012_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +RELEASE_VS2012_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2012_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 >=20 >=20 > DEBUG_VS2012_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /O= PT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Ma= chine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVIC= E_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2012_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /I= GNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION= :.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EF= I_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1024,9 +1024,9 @@ NOOPT_VS2012x86_IA32_CC_FLAGS =3D /nologo /arc= h:IA32 /c /WX /GS- /W4 /Gs32768 > RELEASE_VS2012x86_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2012x86_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /= Zi >=20 >=20 >=20 > - DEBUG_VS2012x86_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2012x86_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2012x86_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2012x86_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 > +RELEASE_VS2012x86_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +NOOPT_VS2012x86_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2012x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D = /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SER= VICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2012x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECT= ION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM= :EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1056,9 +1056,9 @@ NOOPT_VS2012x86_X64_CC_FLAGS =3D /nologo /c /= WX /GS- /W4 /Gs32768 /D UNICODE > RELEASE_VS2012x86_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2012x86_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2012x86_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2012x86_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2012x86_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2012x86_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 > +RELEASE_VS2012x86_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +NOOPT_VS2012x86_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2012x86_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D = /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SER= VICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2012x86_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECT= ION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM= :EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1138,9 +1138,9 @@ NOOPT_VS2013_IA32_CC_FLAGS =3D /nologo /arch= :IA32 /c /WX /GS- /W4 /Gs32768 > RELEASE_VS2013_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2013_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /Z= i >=20 >=20 >=20 > - DEBUG_VS2013_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2013_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2013_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2013_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_N= AME=3D.rdata >=20 > +RELEASE_VS2013_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2013_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_N= AME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2013_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 = /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /= MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERV= ICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2013_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 = /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTI= ON:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:= EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1170,9 +1170,9 @@ NOOPT_VS2013_X64_CC_FLAGS =3D /nologo /c /WX = /GS- /W4 /Gs32768 /D UNICODE /G > RELEASE_VS2013_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2013_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2013_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2013_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2013_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2013_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +RELEASE_VS2013_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2013_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 >=20 >=20 > DEBUG_VS2013_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /O= PT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Ma= chine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVIC= E_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2013_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /I= GNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION= :.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EF= I_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1249,9 +1249,9 @@ NOOPT_VS2013x86_IA32_CC_FLAGS =3D /nologo /arc= h:IA32 /c /WX /GS- /W4 /Gs32768 > RELEASE_VS2013x86_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2013x86_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /= Zi >=20 >=20 >=20 > - DEBUG_VS2013x86_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2013x86_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2013x86_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2013x86_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 > +RELEASE_VS2013x86_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +NOOPT_VS2013x86_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2013x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D = /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SER= VICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2013x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECT= ION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM= :EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1281,9 +1281,9 @@ NOOPT_VS2013x86_X64_CC_FLAGS =3D /nologo /c /= WX /GS- /W4 /Gs32768 /D UNICODE > RELEASE_VS2013x86_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2013x86_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2013x86_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2013x86_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2013x86_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2013x86_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 > +RELEASE_VS2013x86_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +NOOPT_VS2013x86_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2013x86_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D = /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SER= VICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2013x86_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECT= ION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM= :EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1364,9 +1364,9 @@ NOOPT_VS2015_IA32_CC_FLAGS =3D /nologo /arch= :IA32 /c /WX /GS- /W4 /Gs32768 > RELEASE_VS2015_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2015_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /Z= i >=20 >=20 >=20 > - DEBUG_VS2015_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2015_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2015_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2015_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_N= AME=3D.rdata >=20 > +RELEASE_VS2015_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2015_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_N= AME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2015_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 = /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /= MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERV= ICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2015_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 = /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTI= ON:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:= EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1396,9 +1396,9 @@ NOOPT_VS2015_X64_CC_FLAGS =3D /nologo /c /WX = /GS- /W4 /Gs32768 /D UNICODE /G > RELEASE_VS2015_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2015_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2015_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2015_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2015_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2015_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +RELEASE_VS2015_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2015_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 >=20 >=20 > DEBUG_VS2015_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /O= PT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Ma= chine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVIC= E_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2015_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /I= GNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION= :.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EF= I_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1476,9 +1476,9 @@ NOOPT_VS2015x86_IA32_CC_FLAGS =3D /nologo /arc= h:IA32 /c /WX /GS- /W4 /Gs32768 > RELEASE_VS2015x86_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2015x86_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /= Zi >=20 >=20 >=20 > - DEBUG_VS2015x86_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2015x86_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2015x86_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2015x86_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 > +RELEASE_VS2015x86_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +NOOPT_VS2015x86_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2015x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D = /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SER= VICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2015x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECT= ION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM= :EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1508,9 +1508,9 @@ NOOPT_VS2015x86_X64_CC_FLAGS =3D /nologo /c /= WX /GS- /W4 /Gs32768 /D UNICODE > RELEASE_VS2015x86_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2015x86_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2015x86_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2015x86_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2015x86_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2015x86_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 > +RELEASE_VS2015x86_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +NOOPT_VS2015x86_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_= NAME=3D.rdata >=20 >=20 >=20 > DEBUG_VS2015x86_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D = /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SER= VICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2015x86_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001= /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECT= ION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM= :EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1586,9 +1586,9 @@ NOOPT_VS2017_IA32_CC_FLAGS =3D /nologo /arch:I= A32 /c /WX /GS- /W4 /Gs32768 /D > RELEASE_VS2017_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2017_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2017_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2017_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2017_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2017_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +RELEASE_VS2017_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2017_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 >=20 >=20 > DEBUG_VS2017_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /O= PT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MA= CHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVIC= E_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2017_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /I= GNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION= :.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EF= I_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1616,9 +1616,9 @@ NOOPT_VS2017_X64_CC_FLAGS =3D /nologo /c /WX = /GS- /W4 /Gs32768 /D UNICODE /G > RELEASE_VS2017_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2017_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2017_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2017_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2017_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2017_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +RELEASE_VS2017_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2017_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 >=20 >=20 > DEBUG_VS2017_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /I= GNORE:4281 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION= :.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EF= I_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2017_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /I= GNORE:4281 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xda= ta,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) = /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdat= a=3D.data >=20 > @@ -1744,9 +1744,9 @@ NOOPT_VS2019_IA32_CC_FLAGS =3D /nologo /arch:I= A32 /c /WX /GS- /W4 /Gs32768 /D > RELEASE_VS2019_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd >=20 > NOOPT_VS2019_IA32_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /coff /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2019_IA32_NASM_FLAGS =3D -Ox -f win32 -g >=20 > -RELEASE_VS2019_IA32_NASM_FLAGS =3D -Ox -f win32 >=20 > -NOOPT_VS2019_IA32_NASM_FLAGS =3D -O0 -f win32 -g >=20 > + DEBUG_VS2019_IA32_NASM_FLAGS =3D -Ox -f win32 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +RELEASE_VS2019_IA32_NASM_FLAGS =3D -Ox -f win32 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2019_IA32_NASM_FLAGS =3D -O0 -f win32 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 >=20 >=20 > DEBUG_VS2019_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /O= PT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MA= CHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVIC= E_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2019_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /I= GNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION= :.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EF= I_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data >=20 > @@ -1774,9 +1774,9 @@ NOOPT_VS2019_X64_CC_FLAGS =3D /nologo /c /WX = /GS- /W4 /Gs32768 /D UNICODE /G > RELEASE_VS2019_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd >=20 > NOOPT_VS2019_X64_ASM_FLAGS =3D /nologo /c /WX /W3 /Cx /Zd /Zi >=20 >=20 >=20 > - DEBUG_VS2019_X64_NASM_FLAGS =3D -Ox -f win64 -g >=20 > -RELEASE_VS2019_X64_NASM_FLAGS =3D -Ox -f win64 >=20 > -NOOPT_VS2019_X64_NASM_FLAGS =3D -O0 -f win64 -g >=20 > + DEBUG_VS2019_X64_NASM_FLAGS =3D -Ox -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 > +RELEASE_VS2019_X64_NASM_FLAGS =3D -Ox -f win64 -DRODATA_SECTION_NAME= =3D.rdata >=20 > +NOOPT_VS2019_X64_NASM_FLAGS =3D -O0 -f win64 -g -DRODATA_SECTION_NAM= E=3D.rdata >=20 >=20 >=20 > DEBUG_VS2019_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /I= GNORE:4281 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION= :.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EF= I_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG >=20 > RELEASE_VS2019_X64_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /I= GNORE:4281 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xda= ta,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) = /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdat= a=3D.data >=20 > @@ -2030,7 +2030,7 @@ DEFINE GCC_PP_FLAGS =3D -E -= x assembler-with-cpp -include A > *_GCC48_IA32_DLINK2_FLAGS =3D DEF(GCC48_IA32_DLINK2_FLAGS) >=20 > *_GCC48_IA32_RC_FLAGS =3D DEF(GCC_IA32_RC_FLAGS) >=20 > *_GCC48_IA32_OBJCOPY_FLAGS =3D >=20 > -*_GCC48_IA32_NASM_FLAGS =3D -f elf32 >=20 > +*_GCC48_IA32_NASM_FLAGS =3D -f elf32 -DRODATA_SECTION_NAME=3D.= rodata >=20 >=20 >=20 > DEBUG_GCC48_IA32_CC_FLAGS =3D DEF(GCC48_IA32_CC_FLAGS) -Os >=20 > RELEASE_GCC48_IA32_CC_FLAGS =3D DEF(GCC48_IA32_CC_FLAGS) -Os -Wno-u= nused-but-set-variable >=20 > @@ -2058,7 +2058,7 @@ RELEASE_GCC48_IA32_CC_FLAGS =3D DEF(GCC48_IA3= 2_CC_FLAGS) -Os -Wno-unused-but > *_GCC48_X64_DLINK2_FLAGS =3D DEF(GCC48_X64_DLINK2_FLAGS) >=20 > *_GCC48_X64_RC_FLAGS =3D DEF(GCC_X64_RC_FLAGS) >=20 > *_GCC48_X64_OBJCOPY_FLAGS =3D >=20 > -*_GCC48_X64_NASM_FLAGS =3D -f elf64 >=20 > +*_GCC48_X64_NASM_FLAGS =3D -f elf64 -DRODATA_SECTION_NAME=3D.r= odata >=20 >=20 >=20 > DEBUG_GCC48_X64_CC_FLAGS =3D DEF(GCC48_X64_CC_FLAGS) -Os >=20 > RELEASE_GCC48_X64_CC_FLAGS =3D DEF(GCC48_X64_CC_FLAGS) -Os -Wno-unu= sed-but-set-variable >=20 > @@ -2170,7 +2170,7 @@ RELEASE_GCC48_AARCH64_CC_FLAGS =3D DEF(GCC48_AARC= H64_CC_FLAGS) -Wno-unused-but-s > *_GCC49_IA32_DLINK2_FLAGS =3D DEF(GCC49_IA32_DLINK2_FLAGS) >=20 > *_GCC49_IA32_RC_FLAGS =3D DEF(GCC_IA32_RC_FLAGS) >=20 > *_GCC49_IA32_OBJCOPY_FLAGS =3D >=20 > -*_GCC49_IA32_NASM_FLAGS =3D -f elf32 >=20 > +*_GCC49_IA32_NASM_FLAGS =3D -f elf32 -DRODATA_SECTION_NAME=3D.= rodata >=20 >=20 >=20 > DEBUG_GCC49_IA32_CC_FLAGS =3D DEF(GCC49_IA32_CC_FLAGS) -Os >=20 > RELEASE_GCC49_IA32_CC_FLAGS =3D DEF(GCC49_IA32_CC_FLAGS) -Os -Wno-u= nused-but-set-variable -Wno-unused-const-variable >=20 > @@ -2198,7 +2198,7 @@ RELEASE_GCC49_IA32_CC_FLAGS =3D DEF(GCC49_IA3= 2_CC_FLAGS) -Os -Wno-unused-but > *_GCC49_X64_DLINK2_FLAGS =3D DEF(GCC49_X64_DLINK2_FLAGS) >=20 > *_GCC49_X64_RC_FLAGS =3D DEF(GCC_X64_RC_FLAGS) >=20 > *_GCC49_X64_OBJCOPY_FLAGS =3D >=20 > -*_GCC49_X64_NASM_FLAGS =3D -f elf64 >=20 > +*_GCC49_X64_NASM_FLAGS =3D -f elf64 -DRODATA_SECTION_NAME=3D.r= odata >=20 >=20 >=20 > DEBUG_GCC49_X64_CC_FLAGS =3D DEF(GCC49_X64_CC_FLAGS) -Os >=20 > RELEASE_GCC49_X64_CC_FLAGS =3D DEF(GCC49_X64_CC_FLAGS) -Os -Wno-unu= sed-but-set-variable -Wno-unused-const-variable >=20 > @@ -2316,7 +2316,7 @@ RELEASE_GCC49_AARCH64_DLINK_XIPFLAGS =3D -z common-= page-size=3D0x20 > *_GCC5_IA32_DLINK2_FLAGS =3D DEF(GCC5_IA32_DLINK2_FLAGS) -no-pie >=20 > *_GCC5_IA32_RC_FLAGS =3D DEF(GCC_IA32_RC_FLAGS) >=20 > *_GCC5_IA32_OBJCOPY_FLAGS =3D >=20 > -*_GCC5_IA32_NASM_FLAGS =3D -f elf32 >=20 > +*_GCC5_IA32_NASM_FLAGS =3D -f elf32 -DRODATA_SECTION_NAME=3D.r= odata >=20 >=20 >=20 > DEBUG_GCC5_IA32_CC_FLAGS =3D DEF(GCC5_IA32_CC_FLAGS) -flto -Os >=20 > DEBUG_GCC5_IA32_DLINK_FLAGS =3D DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto= -Os -Wl,-m,elf_i386,--oformat=3Delf32-i386 >=20 > @@ -2348,7 +2348,7 @@ RELEASE_GCC5_IA32_DLINK_FLAGS =3D DEF(GCC5_IA32_= X64_DLINK_FLAGS) -flto -Os -Wl, > *_GCC5_X64_DLINK2_FLAGS =3D DEF(GCC5_X64_DLINK2_FLAGS) >=20 > *_GCC5_X64_RC_FLAGS =3D DEF(GCC_X64_RC_FLAGS) >=20 > *_GCC5_X64_OBJCOPY_FLAGS =3D >=20 > -*_GCC5_X64_NASM_FLAGS =3D -f elf64 >=20 > +*_GCC5_X64_NASM_FLAGS =3D -f elf64 -DRODATA_SECTION_NAME=3D.r= odata >=20 >=20 >=20 > DEBUG_GCC5_X64_CC_FLAGS =3D DEF(GCC5_X64_CC_FLAGS) -flto -DUSING= _LTO -Os >=20 > DEBUG_GCC5_X64_DLINK_FLAGS =3D DEF(GCC5_X64_DLINK_FLAGS) -flto -Os >=20 > @@ -2589,7 +2589,7 @@ DEFINE CLANG38_ALL_CC_FLAGS =3D DEF(GCC48_A= LL_CC_FLAGS) DEF(CLANG38_WARNIN > *_CLANG38_IA32_ASM_FLAGS =3D DEF(GCC5_ASM_FLAGS) -m32 -march= =3Di386 DEF(CLANG38_IA32_TARGET) >=20 > *_CLANG38_IA32_RC_FLAGS =3D DEF(GCC_IA32_RC_FLAGS) >=20 > *_CLANG38_IA32_OBJCOPY_FLAGS =3D >=20 > -*_CLANG38_IA32_NASM_FLAGS =3D -f elf32 >=20 > +*_CLANG38_IA32_NASM_FLAGS =3D -f elf32 -DRODATA_SECTION_NAME= =3D.rodata >=20 > *_CLANG38_IA32_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANG38_IA3= 2_TARGET) >=20 > *_CLANG38_IA32_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_= IA32_TARGET) >=20 > *_CLANG38_IA32_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_= IA32_TARGET) >=20 > @@ -2626,7 +2626,7 @@ NOOPT_CLANG38_IA32_DLINK2_FLAGS =3D DEF(GCC5_IA= 32_DLINK2_FLAGS) -O0 > *_CLANG38_X64_ASM_FLAGS =3D DEF(GCC5_ASM_FLAGS) -m64 DEF(CLANG= 38_X64_TARGET) >=20 > *_CLANG38_X64_RC_FLAGS =3D DEF(GCC_X64_RC_FLAGS) >=20 > *_CLANG38_X64_OBJCOPY_FLAGS =3D >=20 > -*_CLANG38_X64_NASM_FLAGS =3D -f elf64 >=20 > +*_CLANG38_X64_NASM_FLAGS =3D -f elf64 -DRODATA_SECTION_NAME=3D= .rodata >=20 > *_CLANG38_X64_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANG38_X64_= TARGET) >=20 > *_CLANG38_X64_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_X= 64_TARGET) >=20 > *_CLANG38_X64_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_X= 64_TARGET) >=20 > @@ -2777,7 +2777,7 @@ DEFINE CLANGPDB_ALL_CC_FLAGS =3D DEF(GCC48_= ALL_CC_FLAGS) DEF(CLANGPDB_WARN > *_CLANGPDB_IA32_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) -m32 -fno-l= to DEF(CLANGPDB_IA32_TARGET) >=20 > *_CLANGPDB_IA32_ASM_FLAGS =3D DEF(GCC_ASM_FLAGS) -m32 -march= =3Di386 DEF(CLANGPDB_IA32_TARGET) >=20 > *_CLANGPDB_IA32_OBJCOPY_FLAGS =3D >=20 > -*_CLANGPDB_IA32_NASM_FLAGS =3D -f win32 >=20 > +*_CLANGPDB_IA32_NASM_FLAGS =3D -f win32 -DRODATA_SECTION_NAME= =3D.rdata >=20 > *_CLANGPDB_IA32_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANGPDB_I= A32_TARGET) >=20 > *_CLANGPDB_IA32_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANGPD= B_IA32_TARGET) >=20 > *_CLANGPDB_IA32_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANGPD= B_IA32_TARGET) >=20 > @@ -2811,7 +2811,7 @@ NOOPT_CLANGPDB_IA32_DLINK2_FLAGS =3D > *_CLANGPDB_X64_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) -m64 -fno-lt= o DEF(CLANGPDB_X64_TARGET) >=20 > *_CLANGPDB_X64_ASM_FLAGS =3D DEF(GCC_ASM_FLAGS) -m64 DEF(CLANG= PDB_X64_TARGET) >=20 > *_CLANGPDB_X64_OBJCOPY_FLAGS =3D >=20 > -*_CLANGPDB_X64_NASM_FLAGS =3D -f win64 >=20 > +*_CLANGPDB_X64_NASM_FLAGS =3D -f win64 -DRODATA_SECTION_NAME= =3D.rdata >=20 > *_CLANGPDB_X64_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANGPDB_X6= 4_TARGET) >=20 > *_CLANGPDB_X64_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANGPDB= _X64_TARGET) >=20 > *_CLANGPDB_X64_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANGPDB= _X64_TARGET) >=20 > @@ -2878,7 +2878,7 @@ DEFINE CLANGDWARF_X64_DLINK2_FLAGS =3D -Wl,-= -defsym=3DPECOFF_HEADER_SIZE=3D0x22 > *_CLANGDWARF_IA32_ASM_FLAGS =3D DEF(GCC5_ASM_FLAGS) -m32 -marc= h=3Di386 DEF(CLANG38_IA32_TARGET) >=20 > *_CLANGDWARF_IA32_RC_FLAGS =3D DEF(GCC_IA32_RC_FLAGS) >=20 > *_CLANGDWARF_IA32_OBJCOPY_FLAGS =3D >=20 > -*_CLANGDWARF_IA32_NASM_FLAGS =3D -f elf32 >=20 > +*_CLANGDWARF_IA32_NASM_FLAGS =3D -f elf32 -DRODATA_SECTION_NAM= E=3D.rodata >=20 > *_CLANGDWARF_IA32_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANG38_= IA32_TARGET) >=20 > *_CLANGDWARF_IA32_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG= 38_IA32_TARGET) >=20 > *_CLANGDWARF_IA32_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG= 38_IA32_TARGET) >=20 > @@ -2914,7 +2914,7 @@ NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS =3D DEF(CLAN= GDWARF_IA32_DLINK2_FLAGS) -O0 - > *_CLANGDWARF_X64_ASM_FLAGS =3D DEF(GCC5_ASM_FLAGS) -m64 DEF(CL= ANG38_X64_TARGET) >=20 > *_CLANGDWARF_X64_RC_FLAGS =3D DEF(GCC_X64_RC_FLAGS) >=20 > *_CLANGDWARF_X64_OBJCOPY_FLAGS =3D >=20 > -*_CLANGDWARF_X64_NASM_FLAGS =3D -f elf64 >=20 > +*_CLANGDWARF_X64_NASM_FLAGS =3D -f elf64 -DRODATA_SECTION_NAME= =3D.rodata >=20 > *_CLANGDWARF_X64_PP_FLAGS =3D DEF(GCC_PP_FLAGS) DEF(CLANG38_X= 64_TARGET) >=20 > *_CLANGDWARF_X64_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG3= 8_X64_TARGET) >=20 > *_CLANGDWARF_X64_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG3= 8_X64_TARGET) >=20 > @@ -2985,7 +2985,7 @@ RELEASE_XCODE5_IA32_DLINK_FLAGS =3D -arch i386= -u _$(IMAGE_ENTRY_POINT) -e _$ > DEBUG_XCODE5_IA32_ASM_FLAGS =3D -arch i386 -g >=20 > NOOPT_XCODE5_IA32_ASM_FLAGS =3D -arch i386 -g >=20 > RELEASE_XCODE5_IA32_ASM_FLAGS =3D -arch i386 >=20 > - *_XCODE5_IA32_NASM_FLAGS =3D -f macho32 >=20 > + *_XCODE5_IA32_NASM_FLAGS =3D -f macho32 -DRODATA_SECTION_NAME=3D.r= odata >=20 >=20 >=20 An EFI Mach-O file does not contain a .rodata section. A Mach-O contains a = __DATA segment that is broken up into sections. For a typical EFI image the= re are __const, __data, __bss sections in the __DATA segment [1]. The mtoc [2] tool used to convert mach-O to PE/COFF converts the entire __D= ATA segment (__const, __data, and __bss) into the .data section. Thus addin= g any kind of new data section is a no-op at best.=20 If you want something to be read only for Xcode/clang you are better off pu= tting it in the __TEXT section [3]. The __TEXT section is read only and for= X64 can not even contain relocations.=20 [1] otool -lh DxeCore.dll ... Load command 1 cmd LC_SEGMENT_64 cmdsize 312 segname __DATA vmaddr 0x000000000002b000 vmsize 0x0000000000147000 fileoff 180224 filesize 8192 maxprot 0x00000003 initprot 0x00000003 nsects 3 flags 0x0 Section sectname __const segname __DATA addr 0x000000000002b000 size 0x0000000000000718 offset 180224 align 2^4 (16) reloff 0 nreloc 0 flags 0x00000000 reserved1 0 reserved2 0 Section sectname __data segname __DATA addr 0x000000000002b720 size 0x00000000000014f0 offset 182048 align 2^4 (16) reloff 0 nreloc 0 flags 0x00000000 reserved1 0 reserved2 0 Section sectname __bss segname __DATA addr 0x000000000002cc10 size 0x0000000000144e11 offset 0 align 2^4 (16) reloff 0 nreloc 0 flags 0x00000001 reserved1 0 reserved2 0 =E2=80=A6 [2] https://opensource.apple.com/source/cctools/cctools-698/efitools/mtoc.c= .auto.html=20 [3] otool more output=E2=80=A6 Load command 0 cmd LC_SEGMENT_64 cmdsize 392 segname __TEXT vmaddr 0x0000000000000240 vmsize 0x00000000000296c0 fileoff 1184 filesize 169664 maxprot 0x00000005 initprot 0x00000005 nsects 4 flags 0x0 Section sectname __text segname __TEXT addr 0x0000000000000240 size 0x000000000002489f offset 1184 align 2^3 (8) reloff 0 nreloc 0 flags 0x80000400 reserved1 0 reserved2 0 Section sectname __cstring segname __TEXT addr 0x0000000000024ae0 size 0x000000000000496d offset 150848 align 2^4 (16) reloff 0 nreloc 0 flags 0x00000002 reserved1 0 reserved2 0 Section sectname __ustring segname __TEXT addr 0x000000000002944e size 0x0000000000000048 offset 169646 align 2^1 (2) reloff 0 nreloc 0 flags 0x00000000 reserved1 0 reserved2 0 Section sectname __const segname __TEXT addr 0x00000000000294a0 size 0x0000000000000448 offset 169728 align 2^4 (16) reloff 0 nreloc 0 flags 0x00000000 reserved1 0 reserved2 0 Thanks, Andrew Fish >=20 >=20 > DEBUG_XCODE5_IA32_CC_FLAGS =3D -arch i386 -c -g -Os -Wall -Werr= or -include AutoGen.h -funsigned-char -fno-stack-protector -fno-builtin -fs= hort-wchar -fasm-blocks -mdynamic-no-pic -mno-implicit-float -mms-bitfields= -msoft-float -Wno-unused-parameter -Wno-missing-braces -Wno-missing-field-= initializers -Wno-tautological-compare -Wno-sign-compare -Wno-varargs -ftra= p-function=3Dundefined_behavior_has_been_optimized_away_by_clang $(PLATFORM= _FLAGS) >=20 > @@ -3003,7 +3003,7 @@ RELEASE_XCODE5_X64_DLINK_FLAGS =3D -arch x86_6= 4 -u _$(IMAGE_ENTRY_POINT) -e _ > DEBUG_XCODE5_X64_ASM_FLAGS =3D -arch x86_64 -g >=20 > NOOPT_XCODE5_X64_ASM_FLAGS =3D -arch x86_64 -g >=20 > RELEASE_XCODE5_X64_ASM_FLAGS =3D -arch x86_64 >=20 > - *_XCODE5_X64_NASM_FLAGS =3D -f macho64 >=20 > + *_XCODE5_X64_NASM_FLAGS =3D -f macho64 -DRODATA_SECTION_NAME=3D.ro= data >=20 > *_XCODE5_*_PP_FLAGS =3D -E -x assembler-with-cpp -include AutoGen= .h >=20 > *_XCODE5_*_VFRPP_FLAGS =3D -x c -E -P -DVFRCOMPILE -include $(MODULE= _NAME)StrDefs.h >=20 >=20 >=20 > --=20 > 2.31.1 >=20 >=20 >=20 >=20 >=20 >=20 >=20 --Apple-Mail=_5E3890A4-D15D-4E39-BCF7-7B698B4BCFB1 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8

On Aug 9, 202= 1, at 2:51 AM, Marvin H=C3=A4user <mhaeuser@posteo.de> wrote:

REF: https://bugzilla.tia= nocore.org/show_bug.cgi?id=3D3318

Differen= t toolchains of the EDK II build system may generate ELF or
M= ach-O files, which use the ".rodata" naming convention, or PE/COFF
files, which use the ".rdata" naming convention. Section permissions<= br class=3D"">are chosen based on this name per file format by NASM. To har= den
image permission security, and to save space by avoiding = both
".rdata" and ".rodata" sections being emitted, expose th= e appropriate
name as a preprocessor constant.
=
Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn<= /a>>
Cc: Yuwei Chen <
yuwei.chen@intel.com>
Cc: Vitaly Chep= tsov <vit9696@proto= nmail.com>
Signed-off-by: Marvin H=C3=A4user <mhaeuser@posteo.de>
---
BaseTools/Conf/tools_def.template | 172 ++++++= ++++----------
1 file changed, 86 insertions(+), 86 deletion= s(-)

diff --git a/BaseTools/Conf/tools_def.tem= plate b/BaseTools/Conf/tools_def.template
index 2e6b382ab623.= .84d464916c4d 100755
--- a/BaseTools/Conf/tools_def.template<= br class=3D"">+++ b/BaseTools/Conf/tools_def.template
@@ -463= ,9 +463,9 @@ NOOPT_VS2008_IA32_CC_FLAGS       = ; =3D /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE
RELEA= SE_VS2008_IA32_ASM_FLAGS     =3D /nologo /c /WX /W3 /Cx= /coff /Zd

NOOPT_VS2008_IA32_ASM_FLAGS  =      =3D /nologo /c /WX /W3 /Cx /coff /Zd /Zi



-  DEBUG_VS2008= _IA32_NASM_FLAGS    =3D -Ox -f win32 -g

-RELEASE_VS2008_IA32_NASM_FLAGS    =3D -Ox -f win32=

-NOOPT_VS2008_IA32_NASM_FLAGS   &nb= sp;  =3D -O0 -f win32 -g

+  DEB= UG_VS2008_IA32_NASM_FLAGS    =3D -Ox -f win32 -g -DRODATA_SE= CTION_NAME=3D.rdata

+RELEASE_VS2008_IA32_NASM_= FLAGS    =3D -Ox -f win32 -DRODATA_SECTION_NAME=3D.rdata

+NOOPT_VS2008_IA32_NASM_FLAGS    &= nbsp; =3D -O0 -f win32 -g -DRODATA_SECTION_NAME=3D.rdata



  DEBUG_VS2008_IA3= 2_DLINK_FLAGS   =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /= OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X8= 6 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER= /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_V= S2008_IA32_DLINK_FLAGS   =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /= IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTIO= N:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:E= FI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data
@@ -495,9 +495,9 @@ NOOPT_VS2008_X64_CC_FLAGS &n= bsp;     =3D /nologo /c /WX /GS- /W4 /Gs32768 /D U= NICODE /G
RELEASE_VS2008_X64_ASM_FLAGS    =3D= /nologo /c /WX /W3 /Cx /Zd

NOOPT_VS2008_X64_= ASM_FLAGS    =3D /nologo /c /WX /W3 /Cx /Zd /Zi



-  DEBUG_VS2008_X64_NAS= M_FLAGS   =3D -Ox -f win64 -g

-RELEA= SE_VS2008_X64_NASM_FLAGS   =3D -Ox -f win64

-NOOPT_VS2008_X64_NASM_FLAGS     =3D -O0 -f win= 64 -g

+  DEBUG_VS2008_X64_NASM_FLAGS &nbs= p; =3D -Ox -f win64 -g -DRODATA_SECTION_NAME=3D.rdata
+RELEASE_VS2008_X64_NASM_FLAGS   =3D -Ox -f win64 -D= RODATA_SECTION_NAME=3D.rdata

+NOOPT_VS2008_X64= _NASM_FLAGS     =3D -O0 -f win64 -g -DRODATA_SECTION_NA= ME=3D.rdata



&nb= sp; DEBUG_VS2008_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTLIB /IGNO= RE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.p= data,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_B= OOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_VS2008_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTLIB /IG= NORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdat= a,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /= SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata= =3D.data

@@ -574,9 +574,9 @@ NOOPT_VS2008x86_I= A32_CC_FLAGS      =3D /nologo /c /WX /GS- /W4 /Gs3= 2768 /D UNICODE
RELEASE_VS2008x86_IA32_ASM_FLAGS   = ;=3D /nologo /c /WX /W3 /Cx /coff /Zd

NOOPT_V= S2008x86_IA32_ASM_FLAGS     =3D /nologo /c /WX /W3 /Cx = /coff /Zd /Zi



- =  DEBUG_VS2008x86_IA32_NASM_FLAGS  =3D -Ox -f win32 -g

-RELEASE_VS2008x86_IA32_NASM_FLAGS  =3D -Ox -f win32=

-NOOPT_VS2008x86_IA32_NASM_FLAGS   =  =3D -O0 -f win32 -g

+  DEBUG_VS2008= x86_IA32_NASM_FLAGS  =3D -Ox -f win32 -g -DRODATA_SECTION_NAME=3D.rdat= a

+RELEASE_VS2008x86_IA32_NASM_FLAGS  =3D= -Ox -f win32 -DRODATA_SECTION_NAME=3D.rdata

+= NOOPT_VS2008x86_IA32_NASM_FLAGS    =3D -O0 -f win32 -g -DROD= ATA_SECTION_NAME=3D.rdata



  DEBUG_VS2008x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFA= ULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D= /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUB= SYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_VS2008x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEF= AULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SE= CTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENT= RY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /M= ERGE:.rdata=3D.data

@@ -605,9 +605,9 @@ NOOPT_= VS2008x86_X64_CC_FLAGS       =3D /nologo /c /= WX /GS- /W4 /Gs32768 /D UNICODE
RELEASE_VS2008x86_X64_ASM_FL= AGS    =3D /nologo /c /WX /W3 /Cx /Zd

NOOPT_VS2008x86_X64_ASM_FLAGS      =3D /no= logo /c /WX /W3 /Cx /Zd /Zi


-  DEBUG_VS2008x86_X64_NASM_FLAGS   =3D -Ox -f w= in64 -g

-RELEASE_VS2008x86_X64_NASM_FLAGS &nbs= p; =3D -Ox -f win64

-NOOPT_VS2008x86_X64_= NASM_FLAGS     =3D -O0 -f win64 -g

+  DEBUG_VS2008x86_X64_NASM_FLAGS   =3D -Ox -f win6= 4 -g -DRODATA_SECTION_NAME=3D.rdata

+RELEASE_V= S2008x86_X64_NASM_FLAGS   =3D -Ox -f win64 -DRODATA_SECTION_NAME= =3D.rdata

+NOOPT_VS2008x86_X64_NASM_FLAGS &nbs= p;   =3D -O0 -f win64 -g -DRODATA_SECTION_NAME=3D.rdata



  DEBUG_V= S2008x86_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:= REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machi= ne:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_D= RIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELE= ASE_VS2008x86_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 = /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTI= ON:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:= EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data
@@ -688,9 +688,9 @@ NOOPT_VS2010_IA32_CC_FLAGS =        =3D /nologo /c /WX /GS- /W4 /Gs32= 768 /D UNICODE
RELEASE_VS2010_IA32_ASM_FLAGS   &nb= sp; =3D /nologo /c /WX /W3 /Cx /coff /Zd

= NOOPT_VS2010_IA32_ASM_FLAGS       =3D /nolog= o /c /WX /W3 /Cx /coff /Zd /Zi


=
-  DEBUG_VS2010_IA32_NASM_FLAGS    =3D -= Ox -f win32 -g

-RELEASE_VS2010_IA32_NASM_FLAGS=    =3D -Ox -f win32

-NOOPT_VS2= 010_IA32_NASM_FLAGS      =3D -O0 -f win32 -g

+  DEBUG_VS2010_IA32_NASM_FLAGS   &n= bsp;=3D -Ox -f win32 -g -DRODATA_SECTION_NAME=3D.rdata

+RELEASE_VS2010_IA32_NASM_FLAGS    =3D -Ox -f win32= -DRODATA_SECTION_NAME=3D.rdata

+NOOPT_VS2010_= IA32_NASM_FLAGS      =3D -O0 -f win32 -g -DRODATA_= SECTION_NAME=3D.rdata



  DEBUG_VS2010_IA32_DLINK_FLAGS   =3D /NOLOGO /N= ODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xd= ata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT)= /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_VS2010_IA32_DLINK_FLAGS   =3D /= NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP = /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTR= Y:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE= :0 /DRIVER /MERGE:.rdata=3D.data

@@ -720,9 +72= 0,9 @@ NOOPT_VS2010_X64_CC_FLAGS       =3D /n= ologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /G
RELEASE_VS2010_= X64_ASM_FLAGS    =3D /nologo /c /WX /W3 /Cx /Zd

NOOPT_VS2010_X64_ASM_FLAGS    =3D /nologo = /c /WX /W3 /Cx /Zd /Zi



-  DEBUG_VS2010_X64_NASM_FLAGS   =3D -Ox -f win64 -g<= br class=3D"">
-RELEASE_VS2010_X64_NASM_FLAGS   =3D= -Ox -f win64

-NOOPT_VS2010_X64_NASM_FLAGS &nb= sp;   =3D -O0 -f win64 -g

+ &nb= sp;DEBUG_VS2010_X64_NASM_FLAGS   =3D -Ox -f win64 -g -DRODATA_SEC= TION_NAME=3D.rdata

+RELEASE_VS2010_X64_NASM_FL= AGS   =3D -Ox -f win64 -DRODATA_SECTION_NAME=3D.rdata

+NOOPT_VS2010_X64_NASM_FLAGS     =3D = -O0 -f win64 -g -DRODATA_SECTION_NAME=3D.rdata



  DEBUG_VS2010_X64_DLINK_FLAGS &n= bsp;=3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALI= GN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(= IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /= DRIVER /DEBUG

RELEASE_VS2010_X64_DLINK_FLAGS =  =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF= =3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG= /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFES= EH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data

@@= -799,9 +799,9 @@ NOOPT_VS2010x86_IA32_CC_FLAGS     &nb= sp;=3D /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE
RELEASE_V= S2010x86_IA32_ASM_FLAGS   =3D /nologo /c /WX /W3 /Cx /coff /Zd
NOOPT_VS2010x86_IA32_ASM_FLAGS   &nbs= p; =3D /nologo /c /WX /W3 /Cx /coff /Zd /Zi



-  DEBUG_VS2010x86_IA32_NASM_FLAGS &n= bsp;=3D -Ox -f win32 -g

-RELEASE_VS2010x86_IA3= 2_NASM_FLAGS  =3D -Ox -f win32

-NOOPT_VS2= 010x86_IA32_NASM_FLAGS    =3D -O0 -f win32 -g
=
+  DEBUG_VS2010x86_IA32_NASM_FLAGS  =3D -Ox -f win= 32 -g -DRODATA_SECTION_NAME=3D.rdata

+RELEASE_= VS2010x86_IA32_NASM_FLAGS  =3D -Ox -f win32 -DRODATA_SECTION_NAME=3D.r= data

+NOOPT_VS2010x86_IA32_NASM_FLAGS  &n= bsp; =3D -O0 -f win32 -g -DRODATA_SECTION_NAME=3D.rdata
=


  DEBUG_VS2010x86_I= A32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D= 10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /D= LL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:= NO /BASE:0 /DRIVER /DEBUG

RELEASE_VS2010x86_I= A32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:RE= F /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE= :X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRI= VER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data

@@ -831,9 +831,9 @@ NOOPT_VS2010x86_X64_CC_FLAGS    =    =3D /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE
RELEASE_VS2010x86_X64_ASM_FLAGS    =3D /nologo /c /WX= /W3 /Cx /Zd

NOOPT_VS2010x86_X64_ASM_FLAGS &n= bsp;    =3D /nologo /c /WX /W3 /Cx /Zd /Zi



-  DEBUG_VS2010x86_X64_= NASM_FLAGS   =3D -Ox -f win64 -g

-RE= LEASE_VS2010x86_X64_NASM_FLAGS   =3D -Ox -f win64
<= br class=3D"">-NOOPT_VS2010x86_X64_NASM_FLAGS     =3D -= O0 -f win64 -g

+  DEBUG_VS2010x86_X64_NAS= M_FLAGS   =3D -Ox -f win64 -g -DRODATA_SECTION_NAME=3D.rdata

+RELEASE_VS2010x86_X64_NASM_FLAGS   =3D = -Ox -f win64 -DRODATA_SECTION_NAME=3D.rdata

+N= OOPT_VS2010x86_X64_NASM_FLAGS     =3D -O0 -f win64 -g -= DRODATA_SECTION_NAME=3D.rdata


<= br class=3D"">   DEBUG_VS2010x86_X64_DLINK_FLAGS  =3D /NOLOG= O /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION= :.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_PO= INT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG<= br class=3D"">
RELEASE_VS2010x86_X64_DLINK_FLAGS  =3D /= NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP = /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTR= Y:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE= :0 /DRIVER /MERGE:.rdata=3D.data

@@ -913,9 +91= 3,9 @@ NOOPT_VS2012_IA32_CC_FLAGS        = ;=3D /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768
RELEASE_VS2= 012_IA32_ASM_FLAGS     =3D /nologo /c /WX /W3 /Cx /coff= /Zd

NOOPT_VS2012_IA32_ASM_FLAGS   =     =3D /nologo /c /WX /W3 /Cx /coff /Zd /Zi



-  DEBUG_VS2012_IA3= 2_NASM_FLAGS    =3D -Ox -f win32 -g

-RELEASE_VS2012_IA32_NASM_FLAGS    =3D -Ox -f win32
-NOOPT_VS2012_IA32_NASM_FLAGS    =   =3D -O0 -f win32 -g

+  DEBUG_= VS2012_IA32_NASM_FLAGS    =3D -Ox -f win32 -g -DRODATA_SECTI= ON_NAME=3D.rdata

+RELEASE_VS2012_IA32_NASM_FLA= GS    =3D -Ox -f win32 -DRODATA_SECTION_NAME=3D.rdata

+NOOPT_VS2012_IA32_NASM_FLAGS    &nbs= p; =3D -O0 -f win32 -g -DRODATA_SECTION_NAME=3D.rdata


  DEBUG_VS2012_IA32_D= LINK_FLAGS   =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT= :ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /= LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /S= AFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_VS20= 12_IA32_DLINK_FLAGS   =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGN= ORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.= pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_= BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data

@@ -945,9 +945,9 @@ NOOPT_VS2012_X64_CC_FLAGS  = ;     =3D /nologo /c /WX /GS- /W4 /Gs32768 /D UNIC= ODE /G
RELEASE_VS2012_X64_ASM_FLAGS    =3D /n= ologo /c /WX /W3 /Cx /Zd

NOOPT_VS2012_X64_ASM= _FLAGS    =3D /nologo /c /WX /W3 /Cx /Zd /Zi
<= br class=3D"">

-  DEBUG_VS2012_X64_NASM_F= LAGS   =3D -Ox -f win64 -g

-RELEASE_= VS2012_X64_NASM_FLAGS   =3D -Ox -f win64

-NOOPT_VS2012_X64_NASM_FLAGS     =3D -O0 -f win64= -g

+  DEBUG_VS2012_X64_NASM_FLAGS  =  =3D -Ox -f win64 -g -DRODATA_SECTION_NAME=3D.rdata

+RELEASE_VS2012_X64_NASM_FLAGS   =3D -Ox -f win64 -DRO= DATA_SECTION_NAME=3D.rdata

+NOOPT_VS2012_X64_N= ASM_FLAGS     =3D -O0 -f win64 -g -DRODATA_SECTION_NAME= =3D.rdata



 = ; DEBUG_VS2012_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTLIB /IGNORE= :4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pda= ta,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOO= T_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_VS2012_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTLIB /IGNO= RE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,= D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SU= BSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata= =3D.data

@@ -1024,9 +1024,9 @@ NOOPT_VS2012x86= _IA32_CC_FLAGS      =3D /nologo /arch:IA32 /c /WX = /GS- /W4 /Gs32768
RELEASE_VS2012x86_IA32_ASM_FLAGS  &nb= sp;=3D /nologo /c /WX /W3 /Cx /coff /Zd

NOOPT= _VS2012x86_IA32_ASM_FLAGS     =3D /nologo /c /WX /W3 /C= x /coff /Zd /Zi



= -  DEBUG_VS2012x86_IA32_NASM_FLAGS  =3D -Ox -f win32 -g

-RELEASE_VS2012x86_IA32_NASM_FLAGS  =3D -Ox -f wi= n32

-NOOPT_VS2012x86_IA32_NASM_FLAGS  &nb= sp; =3D -O0 -f win32 -g

+  DEBUG_VS2= 012x86_IA32_NASM_FLAGS  =3D -Ox -f win32 -g -DRODATA_SECTION_NAME=3D.r= data

+RELEASE_VS2012x86_IA32_NASM_FLAGS  = =3D -Ox -f win32 -DRODATA_SECTION_NAME=3D.rdata

+NOOPT_VS2012x86_IA32_NASM_FLAGS    =3D -O0 -f win32 -g -D= RODATA_SECTION_NAME=3D.rdata


  DEBUG_VS2012x86_IA32_DLINK_FLAGS =3D /NOLOGO /NOD= EFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdat= a,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /= SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_VS2012x86_IA32_DLINK_FLAGS =3D /NOLOGO /NOD= EFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /= SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_E= NTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER = /MERGE:.rdata=3D.data

@@ -1056,9 +1056,9 @@ NO= OPT_VS2012x86_X64_CC_FLAGS       =3D /nologo = /c /WX /GS- /W4 /Gs32768 /D UNICODE
RELEASE_VS2012x86_X64_AS= M_FLAGS    =3D /nologo /c /WX /W3 /Cx /Zd

NOOPT_VS2012x86_X64_ASM_FLAGS      =3D= /nologo /c /WX /W3 /Cx /Zd /Zi



-  DEBUG_VS2012x86_X64_NASM_FLAGS   =3D -Ox = -f win64 -g

-RELEASE_VS2012x86_X64_NASM_FLAGS =   =3D -Ox -f win64

-NOOPT_VS2012x86_= X64_NASM_FLAGS     =3D -O0 -f win64 -g
+  DEBUG_VS2012x86_X64_NASM_FLAGS   =3D -Ox -f = win64 -g -DRODATA_SECTION_NAME=3D.rdata

+RELEA= SE_VS2012x86_X64_NASM_FLAGS   =3D -Ox -f win64 -DRODATA_SECTION_N= AME=3D.rdata

+NOOPT_VS2012x86_X64_NASM_FLAGS &= nbsp;   =3D -O0 -f win64 -g -DRODATA_SECTION_NAME=3D.rdata


  DEBU= G_VS2012x86_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /O= PT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Ma= chine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVIC= E_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

R= ELEASE_VS2012x86_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTLIB /IGNORE:40= 01 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SE= CTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYST= EM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.dat= a

@@ -1138,9 +1138,9 @@ NOOPT_VS2013_IA32_CC_F= LAGS        =3D /nologo /arch:IA32 /c /W= X /GS- /W4 /Gs32768
RELEASE_VS2013_IA32_ASM_FLAGS  &nbs= p;  =3D /nologo /c /WX /W3 /Cx /coff /Zd

NOOPT_VS2013_IA32_ASM_FLAGS       =3D = /nologo /c /WX /W3 /Cx /coff /Zd /Zi



-  DEBUG_VS2013_IA32_NASM_FLAGS    = ;=3D -Ox -f win32 -g

-RELEASE_VS2013_IA32_NASM= _FLAGS    =3D -Ox -f win32

-NOO= PT_VS2013_IA32_NASM_FLAGS      =3D -O0 -f win32 -g=

+  DEBUG_VS2013_IA32_NASM_FLAGS  &n= bsp; =3D -Ox -f win32 -g -DRODATA_SECTION_NAME=3D.rdata
=
+RELEASE_VS2013_IA32_NASM_FLAGS    =3D -Ox -f= win32 -DRODATA_SECTION_NAME=3D.rdata

+NOOPT_V= S2013_IA32_NASM_FLAGS      =3D -O0 -f win32 -g -DR= ODATA_SECTION_NAME=3D.rdata


  DEBUG_VS2013_IA32_DLINK_FLAGS   =3D /NOL= OGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTI= ON:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_= POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBU= G

RELEASE_VS2013_IA32_DLINK_FLAGS   = ;=3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10= /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL= /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO= /BASE:0 /DRIVER /MERGE:.rdata=3D.data

@@ -117= 0,9 +1170,9 @@ NOOPT_VS2013_X64_CC_FLAGS      &nbs= p;=3D /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /G
RELEASE= _VS2013_X64_ASM_FLAGS    =3D /nologo /c /WX /W3 /Cx /Zd

NOOPT_VS2013_X64_ASM_FLAGS    =3D = /nologo /c /WX /W3 /Cx /Zd /Zi


=
-  DEBUG_VS2013_X64_NASM_FLAGS   =3D -Ox -f w= in64 -g

-RELEASE_VS2013_X64_NASM_FLAGS  &= nbsp;=3D -Ox -f win64

-NOOPT_VS2013_X64_NASM_F= LAGS     =3D -O0 -f win64 -g

+  DEBUG_VS2013_X64_NASM_FLAGS   =3D -Ox -f win64 -g -DRO= DATA_SECTION_NAME=3D.rdata

+RELEASE_VS2013_X64= _NASM_FLAGS   =3D -Ox -f win64 -DRODATA_SECTION_NAME=3D.rdata

+NOOPT_VS2013_X64_NASM_FLAGS    &n= bsp;=3D -O0 -f win64 -g -DRODATA_SECTION_NAME=3D.rdata



  DEBUG_VS2013_X64_DLINK_= FLAGS  =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /= MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /= ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /= BASE:0 /DRIVER /DEBUG

RELEASE_VS2013_X64_DLIN= K_FLAGS  =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF = /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X= 64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVE= R /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data

@@ -1249,9 +1249,9 @@ NOOPT_VS2013x86_IA32_CC_FLAGS    = ;  =3D /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768
= RELEASE_VS2013x86_IA32_ASM_FLAGS   =3D /nologo /c /WX /W3 /Cx /c= off /Zd

NOOPT_VS2013x86_IA32_ASM_FLAGS  =    =3D /nologo /c /WX /W3 /Cx /coff /Zd /Zi


-  DEBUG_VS2013x86_IA32_NAS= M_FLAGS  =3D -Ox -f win32 -g

-RELEASE_VS2= 013x86_IA32_NASM_FLAGS  =3D -Ox -f win32

= -NOOPT_VS2013x86_IA32_NASM_FLAGS    =3D -O0 -f win32 -g

+  DEBUG_VS2013x86_IA32_NASM_FLAGS  =3D = -Ox -f win32 -g -DRODATA_SECTION_NAME=3D.rdata

+RELEASE_VS2013x86_IA32_NASM_FLAGS  =3D -Ox -f win32 -DRODATA_SECTION= _NAME=3D.rdata

+NOOPT_VS2013x86_IA32_NASM_FLAG= S    =3D -O0 -f win32 -g -DRODATA_SECTION_NAME=3D.rdata



  DEBUG_V= S2013x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /= OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X8= 6 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER= /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_V= S2013x86_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:42= 54 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,= D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_S= ERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data

@@ -1281,9 +1281,9 @@ NOOPT_VS2013x86_X64_CC_FLAGS  =      =3D /nologo /c /WX /GS- /W4 /Gs32768 /D UNICO= DE
RELEASE_VS2013x86_X64_ASM_FLAGS    =3D /no= logo /c /WX /W3 /Cx /Zd

NOOPT_VS2013x86_X64_A= SM_FLAGS      =3D /nologo /c /WX /W3 /Cx /Zd /Zi


-  DEBUG_VS2= 013x86_X64_NASM_FLAGS   =3D -Ox -f win64 -g

-RELEASE_VS2013x86_X64_NASM_FLAGS   =3D -Ox -f win64

-NOOPT_VS2013x86_X64_NASM_FLAGS    =  =3D -O0 -f win64 -g

+  DEBUG_VS2013= x86_X64_NASM_FLAGS   =3D -Ox -f win64 -g -DRODATA_SECTION_NAME=3D= .rdata

+RELEASE_VS2013x86_X64_NASM_FLAGS  = ; =3D -Ox -f win64 -DRODATA_SECTION_NAME=3D.rdata

+NOOPT_VS2013x86_X64_NASM_FLAGS     =3D -O0 -f= win64 -g -DRODATA_SECTION_NAME=3D.rdata



  DEBUG_VS2013x86_X64_DLINK_FLAGS  = ;=3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:= 32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMA= GE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRI= VER /DEBUG

RELEASE_VS2013x86_X64_DLINK_FLAGS =  =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF= =3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG= /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFES= EH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data

@@= -1364,9 +1364,9 @@ NOOPT_VS2015_IA32_CC_FLAGS     &nbs= p;  =3D /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768
RELEASE_VS2015_IA32_ASM_FLAGS     =3D /nologo /c /WX = /W3 /Cx /coff /Zd

NOOPT_VS2015_IA32_ASM_FLAGS=       =3D /nologo /c /WX /W3 /Cx /coff /Zd /= Zi



-  DEBUG= _VS2015_IA32_NASM_FLAGS    =3D -Ox -f win32 -g

-RELEASE_VS2015_IA32_NASM_FLAGS    =3D -Ox -= f win32

-NOOPT_VS2015_IA32_NASM_FLAGS  &n= bsp;   =3D -O0 -f win32 -g

+ &n= bsp;DEBUG_VS2015_IA32_NASM_FLAGS    =3D -Ox -f win32 -g -DRO= DATA_SECTION_NAME=3D.rdata

+RELEASE_VS2015_IA3= 2_NASM_FLAGS    =3D -Ox -f win32 -DRODATA_SECTION_NAME=3D.rd= ata

+NOOPT_VS2015_IA32_NASM_FLAGS   =    =3D -O0 -f win32 -g -DRODATA_SECTION_NAME=3D.rdata



  DEBUG_VS2= 015_IA32_DLINK_FLAGS   =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OP= T:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MAC= HINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE= _DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RE= LEASE_VS2015_IA32_DLINK_FLAGS   =3D /NOLOGO /NODEFAULTLIB /IGNORE= :4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D = /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBS= YSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.= data

@@ -1396,9 +1396,9 @@ NOOPT_VS2015_X64_CC= _FLAGS       =3D /nologo /c /WX /GS- /W4 /Gs3= 2768 /D UNICODE /G
RELEASE_VS2015_X64_ASM_FLAGS   =  =3D /nologo /c /WX /W3 /Cx /Zd

NOOPT_VS= 2015_X64_ASM_FLAGS    =3D /nologo /c /WX /W3 /Cx /Zd /Zi



-  DEBUG_VS201= 5_X64_NASM_FLAGS   =3D -Ox -f win64 -g

-RELEASE_VS2015_X64_NASM_FLAGS   =3D -Ox -f win64

-NOOPT_VS2015_X64_NASM_FLAGS     =3D -= O0 -f win64 -g

+  DEBUG_VS2015_X64_NASM_F= LAGS   =3D -Ox -f win64 -g -DRODATA_SECTION_NAME=3D.rdata

+RELEASE_VS2015_X64_NASM_FLAGS   =3D -Ox -f= win64 -DRODATA_SECTION_NAME=3D.rdata

+NOOPT_V= S2015_X64_NASM_FLAGS     =3D -O0 -f win64 -g -DRODATA_S= ECTION_NAME=3D.rdata



  DEBUG_VS2015_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAUL= TLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /= SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSY= STEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_VS2015_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFA= ULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SEC= TION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTR= Y_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /ME= RGE:.rdata=3D.data

@@ -1476,9 +1476,9 @@ NOOPT= _VS2015x86_IA32_CC_FLAGS      =3D /nologo /arch:IA= 32 /c /WX /GS- /W4 /Gs32768
RELEASE_VS2015x86_IA32_ASM_FLAGS=   =3D /nologo /c /WX /W3 /Cx /coff /Zd

NOOPT_VS2015x86_IA32_ASM_FLAGS     =3D /nologo /= c /WX /W3 /Cx /coff /Zd /Zi


-  DEBUG_VS2015x86_IA32_NASM_FLAGS  =3D -Ox -f win32 = -g

-RELEASE_VS2015x86_IA32_NASM_FLAGS  = =3D -Ox -f win32

-NOOPT_VS2015x86_IA32_NASM_FL= AGS    =3D -O0 -f win32 -g

+ &n= bsp;DEBUG_VS2015x86_IA32_NASM_FLAGS  =3D -Ox -f win32 -g -DRODATA_SECT= ION_NAME=3D.rdata

+RELEASE_VS2015x86_IA32_NASM= _FLAGS  =3D -Ox -f win32 -DRODATA_SECTION_NAME=3D.rdata
=
+NOOPT_VS2015x86_IA32_NASM_FLAGS    =3D -O0 -= f win32 -g -DRODATA_SECTION_NAME=3D.rdata



  DEBUG_VS2015x86_IA32_DLINK_FLAGS =3D= /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /= SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_E= NTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER = /DEBUG

RELEASE_VS2015x86_IA32_DLINK_FLAGS =3D= /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MA= P /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /EN= TRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BA= SE:0 /DRIVER /MERGE:.rdata=3D.data

@@ -1508,9 = +1508,9 @@ NOOPT_VS2015x86_X64_CC_FLAGS       = ;=3D /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE
RELEASE_VS2= 015x86_X64_ASM_FLAGS    =3D /nologo /c /WX /W3 /Cx /Zd

NOOPT_VS2015x86_X64_ASM_FLAGS    &n= bsp; =3D /nologo /c /WX /W3 /Cx /Zd /Zi

<= br class=3D"">
-  DEBUG_VS2015x86_X64_NASM_FLAGS  &= nbsp;=3D -Ox -f win64 -g

-RELEASE_VS2015x86_X6= 4_NASM_FLAGS   =3D -Ox -f win64

-NOO= PT_VS2015x86_X64_NASM_FLAGS     =3D -O0 -f win64 -g

+  DEBUG_VS2015x86_X64_NASM_FLAGS  &nbs= p;=3D -Ox -f win64 -g -DRODATA_SECTION_NAME=3D.rdata

+RELEASE_VS2015x86_X64_NASM_FLAGS   =3D -Ox -f win64 -DROD= ATA_SECTION_NAME=3D.rdata

+NOOPT_VS2015x86_X64= _NASM_FLAGS     =3D -O0 -f win64 -g -DRODATA_SECTION_NA= ME=3D.rdata



&nb= sp; DEBUG_VS2015x86_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTLIB /I= GNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION= :.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EF= I_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_VS2015x86_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTL= IB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION= :.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_PO= INT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:= .rdata=3D.data

@@ -1586,9 +1586,9 @@ NOOPT_VS2= 017_IA32_CC_FLAGS      =3D /nologo /arch:IA32 /c /= WX /GS- /W4 /Gs32768 /D
RELEASE_VS2017_IA32_ASM_FLAGS  =  =3D /nologo /c /WX /W3 /Cx /coff /Zd

NO= OPT_VS2017_IA32_ASM_FLAGS     =3D /nologo /c /WX /W3 /C= x /coff /Zd /Zi



= -  DEBUG_VS2017_IA32_NASM_FLAGS  =3D -Ox -f win32 -g

-RELEASE_VS2017_IA32_NASM_FLAGS  =3D -Ox -f win32

-NOOPT_VS2017_IA32_NASM_FLAGS    = =3D -O0 -f win32 -g

+  DEBUG_VS2017_IA32_= NASM_FLAGS  =3D -Ox -f win32 -g -DRODATA_SECTION_NAME=3D.rdata

+RELEASE_VS2017_IA32_NASM_FLAGS  =3D -Ox -f win3= 2 -DRODATA_SECTION_NAME=3D.rdata

+NOOPT_VS2017= _IA32_NASM_FLAGS    =3D -O0 -f win32 -g -DRODATA_SECTION_NAM= E=3D.rdata



&nbs= p; DEBUG_VS2017_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:400= 1 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D= /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SE= RVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_VS2017_IA32_DLINK_FLAGS =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /= IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTIO= N:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:E= FI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data
@@ -1616,9 +1616,9 @@ NOOPT_VS2017_X64_CC_FLAGS =       =3D /nologo /c /WX /GS- /W4 /Gs32768 /D= UNICODE /G
RELEASE_VS2017_X64_ASM_FLAGS    = =3D /nologo /c /WX /W3 /Cx /Zd

NOOPT_VS2017_X= 64_ASM_FLAGS      =3D /nologo /c /WX /W3 /Cx /Zd /= Zi



-  DEBUG= _VS2017_X64_NASM_FLAGS   =3D -Ox -f win64 -g

-RELEASE_VS2017_X64_NASM_FLAGS   =3D -Ox -f win64

-NOOPT_VS2017_X64_NASM_FLAGS     = ;=3D -O0 -f win64 -g

+  DEBUG_VS2017_X64_= NASM_FLAGS   =3D -Ox -f win64 -g -DRODATA_SECTION_NAME=3D.rdata
+RELEASE_VS2017_X64_NASM_FLAGS   =3D = -Ox -f win64 -DRODATA_SECTION_NAME=3D.rdata

+N= OOPT_VS2017_X64_NASM_FLAGS     =3D -O0 -f win64 -g -DRO= DATA_SECTION_NAME=3D.rdata



  DEBUG_VS2017_X64_DLINK_FLAGS  =3D /NOLOGO /NOD= EFAULTLIB /IGNORE:4001 /IGNORE:4281 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /= SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_E= NTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER = /DEBUG

RELEASE_VS2017_X64_DLINK_FLAGS  = =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4281 /IGNORE:4254 /OPT:REF /= OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X6= 4 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER= /SAFESEH:NO /BASE:0 /DRIVER /MERGE:.rdata=3D.data

@@ -1744,9 +1744,9 @@ NOOPT_VS2019_IA32_CC_FLAGS    &n= bsp; =3D /nologo /arch:IA32 /c /WX /GS- /W4 /Gs32768 /D
= RELEASE_VS2019_IA32_ASM_FLAGS   =3D /nologo /c /WX /W3 /Cx /coff= /Zd

NOOPT_VS2019_IA32_ASM_FLAGS   =   =3D /nologo /c /WX /W3 /Cx /coff /Zd /Zi



-  DEBUG_VS2019_IA32_NASM_FLAGS &= nbsp;=3D -Ox -f win32 -g

-RELEASE_VS2019_IA32_= NASM_FLAGS  =3D -Ox -f win32

-NOOPT_VS201= 9_IA32_NASM_FLAGS    =3D -O0 -f win32 -g

+  DEBUG_VS2019_IA32_NASM_FLAGS  =3D -Ox -f win32 -g -D= RODATA_SECTION_NAME=3D.rdata

+RELEASE_VS2019_I= A32_NASM_FLAGS  =3D -Ox -f win32 -DRODATA_SECTION_NAME=3D.rdata

+NOOPT_VS2019_IA32_NASM_FLAGS    =3D = -O0 -f win32 -g -DRODATA_SECTION_NAME=3D.rdata



  DEBUG_VS2019_IA32_DLINK_FLAGS = =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:3= 2 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /ENTRY:$(IMAG= E_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIV= ER /DEBUG

RELEASE_VS2019_IA32_DLINK_FLAGS =3D= /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MA= P /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D /MACHINE:X86 /LTCG /DLL /EN= TRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BA= SE:0 /DRIVER /MERGE:.rdata=3D.data

@@ -1774,9 = +1774,9 @@ NOOPT_VS2019_X64_CC_FLAGS       = =3D /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /G
RELEASE_V= S2019_X64_ASM_FLAGS    =3D /nologo /c /WX /W3 /Cx /Zd

NOOPT_VS2019_X64_ASM_FLAGS     =  =3D /nologo /c /WX /W3 /Cx /Zd /Zi



-  DEBUG_VS2019_X64_NASM_FLAGS   = =3D -Ox -f win64 -g

-RELEASE_VS2019_X64_NASM_F= LAGS   =3D -Ox -f win64

-NOOPT_VS201= 9_X64_NASM_FLAGS     =3D -O0 -f win64 -g
=
+  DEBUG_VS2019_X64_NASM_FLAGS   =3D -Ox -f w= in64 -g -DRODATA_SECTION_NAME=3D.rdata

+RELEAS= E_VS2019_X64_NASM_FLAGS   =3D -Ox -f win64 -DRODATA_SECTION_NAME= =3D.rdata

+NOOPT_VS2019_X64_NASM_FLAGS  &= nbsp;  =3D -O0 -f win64 -g -DRODATA_SECTION_NAME=3D.rdata



  DEBUG_VS20= 19_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTLIB /IGNORE:4001 /IGNORE:428= 1 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTION:.xdata,D /SECTION:.pdata,D= /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SE= RVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /DEBUG

RELEASE_VS2019_X64_DLINK_FLAGS  =3D /NOLOGO /NODEFAULTLIB /IGNORE:4= 001 /IGNORE:4281 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /MAP /ALIGN:32 /SECTIO= N:.xdata,D /SECTION:.pdata,D /Machine:X64 /LTCG /DLL /ENTRY:$(IMAGE_ENTRY_P= OINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /DRIVER /MERGE= :.rdata=3D.data

@@ -2030,7 +2030,7 @@ DEFINE G= CC_PP_FLAGS           &nb= sp;            = =3D -E -x assembler-with-cpp -include A
*_GCC48_IA32_DLINK2_= FLAGS         =3D DEF(GCC48_IA32_DL= INK2_FLAGS)

*_GCC48_IA32_RC_FLAGS   = ;          =3D DEF(GCC_IA= 32_RC_FLAGS)

*_GCC48_IA32_OBJCOPY_FLAGS  = ;      =3D

-*_GC= C48_IA32_NASM_FLAGS          &= nbsp;=3D -f elf32

+*_GCC48_IA32_NASM_FLAGS &nb= sp;         =3D -f elf32 -DROD= ATA_SECTION_NAME=3D.rodata



  DEBUG_GCC48_IA32_CC_FLAGS     &= nbsp; =3D DEF(GCC48_IA32_CC_FLAGS) -Os

R= ELEASE_GCC48_IA32_CC_FLAGS       =3D DEF(GCC4= 8_IA32_CC_FLAGS) -Os -Wno-unused-but-set-variable

@@ -2058,7 +2058,7 @@ RELEASE_GCC48_IA32_CC_FLAGS    &= nbsp;  =3D DEF(GCC48_IA32_CC_FLAGS) -Os -Wno-unused-but
*_GCC48_X64_DLINK2_FLAGS        &= nbsp;=3D DEF(GCC48_X64_DLINK2_FLAGS)

*_GCC48_= X64_RC_FLAGS           &n= bsp; =3D DEF(GCC_X64_RC_FLAGS)

*_GCC48_X= 64_OBJCOPY_FLAGS        =3D

-*_GCC48_X64_NASM_FLAGS      &nbs= p;    =3D -f elf64

+*_GCC4= 8_X64_NASM_FLAGS          &nbs= p;=3D -f elf64 -DRODATA_SECTION_NAME=3D.rodata



  DEBUG_GCC48_X64_CC_FLAGS  =      =3D DEF(GCC48_X64_CC_FLAGS) -Os

RELEASE_GCC48_X64_CC_FLAGS      &= nbsp;=3D DEF(GCC48_X64_CC_FLAGS) -Os -Wno-unused-but-set-variable

@@ -2170,7 +2170,7 @@ RELEASE_GCC48_AARCH64_CC_FLAGS &= nbsp; =3D DEF(GCC48_AARCH64_CC_FLAGS) -Wno-unused-but-s
= *_GCC49_IA32_DLINK2_FLAGS         = =3D DEF(GCC49_IA32_DLINK2_FLAGS)

*_GCC49_IA32= _RC_FLAGS            = ; =3D DEF(GCC_IA32_RC_FLAGS)

*_GCC49_IA3= 2_OBJCOPY_FLAGS        =3D

-*_GCC49_IA32_NASM_FLAGS      &nbs= p;    =3D -f elf32

+*_GCC4= 9_IA32_NASM_FLAGS          &nb= sp;=3D -f elf32 -DRODATA_SECTION_NAME=3D.rodata



  DEBUG_GCC49_IA32_CC_FLAGS &nbs= p;     =3D DEF(GCC49_IA32_CC_FLAGS) -Os

RELEASE_GCC49_IA32_CC_FLAGS     &= nbsp; =3D DEF(GCC49_IA32_CC_FLAGS) -Os -Wno-unused-but-set-variable -W= no-unused-const-variable

@@ -2198,7 +2198,7 @@= RELEASE_GCC49_IA32_CC_FLAGS       =3D DEF(GC= C49_IA32_CC_FLAGS) -Os -Wno-unused-but
*_GCC49_X64_DLINK2_FL= AGS         =3D DEF(GCC49_X64_DLINK= 2_FLAGS)

*_GCC49_X64_RC_FLAGS   &nb= sp;         =3D DEF(GCC_X64_RC= _FLAGS)

*_GCC49_X64_OBJCOPY_FLAGS   = ;     =3D

-*_GCC49_X6= 4_NASM_FLAGS           = =3D -f elf64

+*_GCC49_X64_NASM_FLAGS  &nb= sp;        =3D -f elf64 -DRODATA_SE= CTION_NAME=3D.rodata



  DEBUG_GCC49_X64_CC_FLAGS      &= nbsp;=3D DEF(GCC49_X64_CC_FLAGS) -Os

RELEASE_= GCC49_X64_CC_FLAGS       =3D DEF(GCC49_X64_CC= _FLAGS) -Os -Wno-unused-but-set-variable -Wno-unused-const-variable

@@ -2316,7 +2316,7 @@ RELEASE_GCC49_AARCH64_DLINK_XIP= FLAGS =3D -z common-page-size=3D0x20
*_GCC5_IA32_DLINK2_FLAG= S         =3D DEF(GCC5_IA32_DLINK2_= FLAGS) -no-pie

*_GCC5_IA32_RC_FLAGS  &nb= sp;          =3D DEF(GCC_= IA32_RC_FLAGS)

*_GCC5_IA32_OBJCOPY_FLAGS &nbs= p;      =3D

-*_G= CC5_IA32_NASM_FLAGS          &= nbsp;=3D -f elf32

+*_GCC5_IA32_NASM_FLAGS &nbs= p;         =3D -f elf32 -DRODA= TA_SECTION_NAME=3D.rodata



  DEBUG_GCC5_IA32_CC_FLAGS     &nb= sp; =3D DEF(GCC5_IA32_CC_FLAGS) -flto -Os

  DEBUG_GCC5_IA32_DLINK_FLAGS    =3D DEF(GCC5_IA= 32_X64_DLINK_FLAGS) -flto -Os -Wl,-m,elf_i386,--oformat=3Delf32-i386

@@ -2348,7 +2348,7 @@ RELEASE_GCC5_IA32_DLINK_FLAGS =    =3D DEF(GCC5_IA32_X64_DLINK_FLAGS) -flto -Os -Wl,
*_GCC5_X64_DLINK2_FLAGS        &= nbsp; =3D DEF(GCC5_X64_DLINK2_FLAGS)

*_G= CC5_X64_RC_FLAGS          &nbs= p;   =3D DEF(GCC_X64_RC_FLAGS)

= *_GCC5_X64_OBJCOPY_FLAGS         = =3D

-*_GCC5_X64_NASM_FLAGS    &= nbsp;       =3D -f elf64
<= br class=3D"">+*_GCC5_X64_NASM_FLAGS       &n= bsp;    =3D -f elf64 -DRODATA_SECTION_NAME=3D.rodata


  DEBUG= _GCC5_X64_CC_FLAGS        =3D DEF(GCC5_X= 64_CC_FLAGS) -flto -DUSING_LTO -Os

 &nbs= p;DEBUG_GCC5_X64_DLINK_FLAGS     =3D DEF(GCC5_X64_DLINK= _FLAGS) -flto -Os

@@ -2589,7 +2589,7 @@ DEFINE= CLANG38_ALL_CC_FLAGS         =3D D= EF(GCC48_ALL_CC_FLAGS) DEF(CLANG38_WARNIN
*_CLANG38_IA32_ASM= _FLAGS            = =3D DEF(GCC5_ASM_FLAGS) -m32 -march=3Di386 DEF(CLANG38_IA32_TARGET)

*_CLANG38_IA32_RC_FLAGS     &nbs= p;       =3D DEF(GCC_IA32_RC_FLAGS)

*_CLANG38_IA32_OBJCOPY_FLAGS    &n= bsp;   =3D

-*_CLANG38_IA32_NASM= _FLAGS           =3D -f e= lf32

+*_CLANG38_IA32_NASM_FLAGS   &n= bsp;       =3D -f elf32 -DRODATA_SECTION= _NAME=3D.rodata

*_CLANG38_IA32_PP_FLAGS  = ;           =3D DEF(= GCC_PP_FLAGS) DEF(CLANG38_IA32_TARGET)

*_CLAN= G38_IA32_ASLPP_FLAGS          = =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_IA32_TARGET)

*_CLANG38_IA32_VFRPP_FLAGS        = ;  =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_IA32_TARGET)

@@ -2626,7 +2626,7 @@ NOOPT_CLANG38_IA32_DLINK2_FLAGS &nbs= p;   =3D DEF(GCC5_IA32_DLINK2_FLAGS) -O0
*_CL= ANG38_X64_ASM_FLAGS          &= nbsp; =3D DEF(GCC5_ASM_FLAGS) -m64 DEF(CLANG38_X64_TARGET)

*_CLANG38_X64_RC_FLAGS      &nb= sp;      =3D DEF(GCC_X64_RC_FLAGS)

*_CLANG38_X64_OBJCOPY_FLAGS     &= nbsp;  =3D

-*_CLANG38_X64_NASM_FLAGS=           =3D -f elf64
+*_CLANG38_X64_NASM_FLAGS    &nb= sp;      =3D -f elf64 -DRODATA_SECTION_NAME= =3D.rodata

*_CLANG38_X64_PP_FLAGS   = ;          =3D DEF(GCC_PP= _FLAGS) DEF(CLANG38_X64_TARGET)

*_CLANG38_X64= _ASLPP_FLAGS          =3D DEF(= GCC_ASLPP_FLAGS) DEF(CLANG38_X64_TARGET)

*_CL= ANG38_X64_VFRPP_FLAGS          = ;=3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_X64_TARGET)

@@ -2777,7 +2777,7 @@ DEFINE CLANGPDB_ALL_CC_FLAGS    =      =3D DEF(GCC48_ALL_CC_FLAGS) DEF(CLANGPDB_WARN=
*_CLANGPDB_IA32_ASLCC_FLAGS      &= nbsp;   =3D DEF(GCC_ASLCC_FLAGS) -m32 -fno-lto DEF(CLANGPDB_= IA32_TARGET)

*_CLANGPDB_IA32_ASM_FLAGS  =           =3D DEF(GCC_ASM= _FLAGS) -m32 -march=3Di386 DEF(CLANGPDB_IA32_TARGET)

*_CLANGPDB_IA32_OBJCOPY_FLAGS       &= nbsp;=3D

-*_CLANGPDB_IA32_NASM_FLAGS  &nb= sp;        =3D -f win32

+*_CLANGPDB_IA32_NASM_FLAGS      = ;     =3D -f win32 -DRODATA_SECTION_NAME=3D.rdata<= br class=3D"">
*_CLANGPDB_IA32_PP_FLAGS    &n= bsp;        =3D DEF(GCC_PP_FLAGS) D= EF(CLANGPDB_IA32_TARGET)

*_CLANGPDB_IA32_ASLP= P_FLAGS          =3D DEF(GCC_A= SLPP_FLAGS) DEF(CLANGPDB_IA32_TARGET)

*_CLANG= PDB_IA32_VFRPP_FLAGS          = =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANGPDB_IA32_TARGET)

@@ -2811,7 +2811,7 @@ NOOPT_CLANGPDB_IA32_DLINK2_FLAGS   &n= bsp; =3D
*_CLANGPDB_X64_ASLCC_FLAGS    &= nbsp;     =3D DEF(GCC_ASLCC_FLAGS) -m64 -fno-lto D= EF(CLANGPDB_X64_TARGET)

*_CLANGPDB_X64_ASM_FL= AGS            =3D D= EF(GCC_ASM_FLAGS) -m64 DEF(CLANGPDB_X64_TARGET)

*_CLANGPDB_X64_OBJCOPY_FLAGS        = =3D

-*_CLANGPDB_X64_NASM_FLAGS   &nb= sp;       =3D -f win64
+*_CLANGPDB_X64_NASM_FLAGS       =     =3D -f win64 -DRODATA_SECTION_NAME=3D.rdata

*_CLANGPDB_X64_PP_FLAGS     &nbs= p;       =3D DEF(GCC_PP_FLAGS) DEF(CLANG= PDB_X64_TARGET)

*_CLANGPDB_X64_ASLPP_FLAGS &n= bsp;        =3D DEF(GCC_ASLPP_FLAGS= ) DEF(CLANGPDB_X64_TARGET)

*_CLANGPDB_X64_VFR= PP_FLAGS          =3D DEF(GCC_= VFRPP_FLAGS) DEF(CLANGPDB_X64_TARGET)

@@ -2878= ,7 +2878,7 @@ DEFINE CLANGDWARF_X64_DLINK2_FLAGS     &n= bsp;  =3D -Wl,--defsym=3DPECOFF_HEADER_SIZE=3D0x22
= *_CLANGDWARF_IA32_ASM_FLAGS        &nbs= p;   =3D DEF(GCC5_ASM_FLAGS) -m32 -march=3Di386 DEF(CLANG38_= IA32_TARGET)

*_CLANGDWARF_IA32_RC_FLAGS  = ;           =3D DEF(= GCC_IA32_RC_FLAGS)

*_CLANGDWARF_IA32_OBJCOPY_= FLAGS        =3D

-*_CLANGDWARF_IA32_NASM_FLAGS       &nb= sp;   =3D -f elf32

+*_CLANGDWAR= F_IA32_NASM_FLAGS          &nb= sp;=3D -f elf32 -DRODATA_SECTION_NAME=3D.rodata

*_CLANGDWARF_IA32_PP_FLAGS        &nb= sp;    =3D DEF(GCC_PP_FLAGS) DEF(CLANG38_IA32_TARGET)
*_CLANGDWARF_IA32_ASLPP_FLAGS   &nbs= p;      =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_= IA32_TARGET)

*_CLANGDWARF_IA32_VFRPP_FLAGS &n= bsp;        =3D DEF(GCC_VFRPP_FLAGS= ) DEF(CLANG38_IA32_TARGET)

@@ -2914,7 +2914,7 = @@ NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS     =3D DEF(CLANG= DWARF_IA32_DLINK2_FLAGS) -O0 -
*_CLANGDWARF_X64_ASM_FLAGS &n= bsp;          =3D DEF(GCC= 5_ASM_FLAGS) -m64 DEF(CLANG38_X64_TARGET)

*_C= LANGDWARF_X64_RC_FLAGS         &nbs= p;   =3D DEF(GCC_X64_RC_FLAGS)

= *_CLANGDWARF_X64_OBJCOPY_FLAGS        = =3D

-*_CLANGDWARF_X64_NASM_FLAGS   &= nbsp;       =3D -f elf64
<= br class=3D"">+*_CLANGDWARF_X64_NASM_FLAGS      &n= bsp;    =3D -f elf64 -DRODATA_SECTION_NAME=3D.rodata
*_CLANGDWARF_X64_PP_FLAGS    &nb= sp;        =3D DEF(GCC_PP_FLAGS) DE= F(CLANG38_X64_TARGET)

*_CLANGDWARF_X64_ASLPP_= FLAGS          =3D DEF(GCC_ASL= PP_FLAGS) DEF(CLANG38_X64_TARGET)

*_CLANGDWAR= F_X64_VFRPP_FLAGS          =3D= DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_X64_TARGET)

= @@ -2985,7 +2985,7 @@ RELEASE_XCODE5_IA32_DLINK_FLAGS    &nb= sp; =3D -arch i386 -u _$(IMAGE_ENTRY_POINT) -e _$
 = ; DEBUG_XCODE5_IA32_ASM_FLAGS  =3D -arch i386 -g
  NOOPT_XCODE5_IA32_ASM_FLAGS  =3D -arch i386 = -g

RELEASE_XCODE5_IA32_ASM_FLAGS  =3D -a= rch i386

-      *_XCO= DE5_IA32_NASM_FLAGS =3D -f macho32

+  &nb= sp;   *_XCODE5_IA32_NASM_FLAGS =3D -f macho32 -DRODATA_SECTI= ON_NAME=3D.rodata




An EFI Mach-O fil= e does not contain a .rodata section. A Mach-O contains a __DATA segment th= at is broken up into sections. For a typical EFI image there are __const, _= _data, __bss sections in the __DATA segment [1].

<= /div>
The mtoc [2] tool used to convert mach-O to PE/COFF converts the = entire __DATA segment (__const, __data, and __bss) into the .data section. = Thus adding any kind of new data section is a no-op at best. 

If you want something to be read only for Xcode= /clang you are better off putting it in the __TEXT section [3]. The __TEXT = section is read only and for X64 can not even contain relocations. 

[1] otool -lh DxeCore.dll
...<= /div>
Load command 1
      cmd LC_SEGME= NT_64
  cmdsize = 312
  segname __DA= TA
   vmaddr = 0x000000000002b000
= &nbs= p;  vmsize 0x0000000000147000
  fileoff 180224
 filesize 8192
  maxprot 0x00000003
 initprot 0x00000003
   nsects 3
    flags 0x0
Section
&= nbsp; sectname __const
   segname __DATA
      addr 0x000000000002b000
      size 0x0000000000000718<= /span>
    offset 18= 0224
    = ; align 2^4 (16)
 =   reloff 0
 =   nreloc 0
 =     flags 0x00000000
 reserved1 0
 reserved2 0
Se= ction
  sectname= __data
   se= gname __DATA
  &nb= sp;   addr 0x000000000002b720
      size 0x00000000000014f0
    offset 182048
<= div style=3D"margin: 0px; font-stretch: normal; font-size: 11px; line-heigh= t: normal; font-family: Menlo;" class=3D"">     align 2^4 (16)
    reloff 0
    nreloc 0
     flag= s 0x00000000
 rese= rved1 0
 reserved2= 0
Section
=
  sectname __bss
<= div style=3D"margin: 0px; font-stretch: normal; font-size: 11px; line-heigh= t: normal; font-family: Menlo;" class=3D"">   segname __DATA
      addr 0x000= 000000002cc10
  &n= bsp;   size 0x0000000000144e11
    offset 0
     align 2^4 (16)
    reloff 0
    nreloc 0
     flags 0x00000001
<= div style=3D"margin: 0px; font-stretch: normal; font-size: 11px; line-heigh= t: normal; font-family: Menlo;" class=3D""> reserved1 0
 reserved2 0
= =E2=80=A6


[3] otool mo= re output=E2=80=A6
Load c= ommand 0
    =   cmd LC_SEGMENT_64
  cmdsize 392
&n= bsp; segname __TEXT
&nb= sp;  vmaddr 0x0000000000000240
   vmsize 0x00000000000296c0
  fileoff 1184
 filesize 169664
  maxprot 0x00000005
 initprot 0x00000005
   nsects 4
    flags 0x0
Section
  sectname __text
   segname __TEXT
      addr 0x0000000000000240<= /div>
      size 0x00= 0000000002489f
  &= nbsp; offset 1184
<= span style=3D"font-variant-ligatures: no-common-ligatures" class=3D""> = ;    align 2^3 (8)
    reloff 0
    nreloc 0
     flags 0x80000400
 reserved1 0
 reserved2 0
Section
<= span style=3D"font-variant-ligatures: no-common-ligatures" class=3D""> = ; sectname __cstring
&n= bsp;  segname __TEXT
      addr 0x0000000000024ae0
      size 0x000000000000496d
    offset 150848<= /span>
     ali= gn 2^4 (16)
  &nbs= p; reloff 0
  &nbs= p; nreloc 0
  = ;   flags 0x00000002
 reserved1 0
&n= bsp;reserved2 0
Section=
  sectname __ustr= ing
   segnam= e __TEXT
    =   addr 0x000000000002944e
      size 0x0000000000000048
    offset 169646
     align 2^1 (2)=
    reloff 0=
    nreloc 0=
     flags 0x0= 0000000
 reserved1= 0
 reserved2 0
Section
  sectname __const
   segname __TEXT
      addr 0x000000= 00000294a0
   = ;   size 0x0000000000000448
    offset 169728
     align 2^4 (16)
    reloff 0
    nreloc 0
     flags 0x00000000
 reserved1 0
 reserved2 0

Thanks,

Andrew Fish



  DEBUG_XCODE5_IA32_CC_FLAGS   =3D -arch i386 -c -g= -Os       -Wall -Werror -include AutoGen.h -= funsigned-char -fno-stack-protector -fno-builtin -fshort-wchar -fasm-blocks= -mdynamic-no-pic -mno-implicit-float -mms-bitfields -msoft-float -Wno-unus= ed-parameter -Wno-missing-braces -Wno-missing-field-initializers -Wno-tauto= logical-compare -Wno-sign-compare -Wno-varargs -ftrap-function=3Dundefined_= behavior_has_been_optimized_away_by_clang $(PLATFORM_FLAGS)
<= br class=3D"">@@ -3003,7 +3003,7 @@ RELEASE_XCODE5_X64_DLINK_FLAGS  &n= bsp;   =3D -arch x86_64 -u _$(IMAGE_ENTRY_POINT) -e _
  DEBUG_XCODE5_X64_ASM_FLAGS  =3D -arch x86_64 -g
  NOOPT_XCODE5_X64_ASM_FLAGS  = =3D -arch x86_64 -g

RELEASE_XCODE5_X64_ASM_FL= AGS  =3D -arch x86_64

-    = ;  *_XCODE5_X64_NASM_FLAGS =3D -f macho64

+      *_XCODE5_X64_NASM_FLAGS =3D -f macho6= 4 -DRODATA_SECTION_NAME=3D.rodata

*_XCODE5_*_= PP_FLAGS         =3D -E -x assemble= r-with-cpp -include AutoGen.h

*_XCODE5_*_VFRP= P_FLAGS      =3D -x c -E -P -DVFRCOMPILE -include = $(MODULE_NAME)StrDefs.h



--
2.31.1








--Apple-Mail=_5E3890A4-D15D-4E39-BCF7-7B698B4BCFB1--