From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-vs1-f46.google.com (mail-vs1-f46.google.com [209.85.217.46]) by mx.groups.io with SMTP id smtpd.web12.17870.1656540374156994878 for ; Wed, 29 Jun 2022 15:06:14 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20210112 header.b=C9UR4DzS; spf=pass (domain: gmail.com, ip: 209.85.217.46, mailfrom: pedro.falcato@gmail.com) Received: by mail-vs1-f46.google.com with SMTP id 189so5631908vsh.2 for ; Wed, 29 Jun 2022 15:06:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=DFw78XYIcIS9stQpNiNqHLZubfgG1AaLR7dr3XgdetU=; b=C9UR4DzSq6hCRlquOTb1rKHpScCtxWh/RMeYVRIkAQ1muRwS8gSsf2Zgq2EXy2EF7+ /0xSTomtxnjEo5gdeWl2YjyMIgx0embQ3ELK6q+FnC3W5F9oJdhCVllQvqoCBVN2rFJa iKaGbVECZkRrdvdurT5fWquTuDoQ9LTWDhTgqosrecmuEb3ymtBvrGLDjPLRc6KXHnHY WlLrH1TQd3Vt12OT0B2FhVeHURigQk0V7dYjGpuhvr/UVgfmdZRe/auCoVGC5QneERGw 1Jc238XSR1mqgjjlHHJRcoE7stnvsH+F4QEZxbpyJmtvmRMka11J/fqhnbnkDut5+FaP AlLw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=DFw78XYIcIS9stQpNiNqHLZubfgG1AaLR7dr3XgdetU=; b=DWue5gSIt+ClopsIz4z8eGVXWTMVsLwYdJCsgwmzgNR2MKZWZIw7zBGzyl5sIevm+Q Jk8/y/UyEYzJanafxT6CSVPWtQKukELj0rEP2CldSBeE6YzW+f97Lq8kn3kJ6LpSVSY7 0JacuBilTWPCOSNKH/StcyEPsLjXEIO40sCDqmWfKL+vmckPcxcRtZf5B+VuxKwnXGtl X3DdcTudcDRpF+BsjUlIphh/VaM+dE9+YtyujedEblqBagWI7mE531a/5vbSarFmeynm bV9oY0ep2pAZgzCzl2LItEB1ACMAq73qIoHsh+oosNJOHT8gMRWcyfHetrcJ1C7BeWmB 6vJw== X-Gm-Message-State: AJIora81ajOob9LrFq57cFW2ElrDvQ33qtqvwXdLeaYTqXLxkldoryNA urQfbqEEBe/84X6DoExhNj1JfbxH7ZYgei5iMjI+7OIvm7s= X-Google-Smtp-Source: AGRyM1suO/YjbwllIhOoDtiiqInrs9xN9+r6utwXFvkXrrcBvNJdPHAsdZx4XxThLqlkcpyCRPDD/cqeVx4wrhAeADw= X-Received: by 2002:a67:6d42:0:b0:34b:94e4:55f6 with SMTP id i63-20020a676d42000000b0034b94e455f6mr5818198vsc.6.1656540372954; Wed, 29 Jun 2022 15:06:12 -0700 (PDT) MIME-Version: 1.0 References: <20220610180918.673822-1-dannf@debian.org> In-Reply-To: From: "Pedro Falcato" Date: Wed, 29 Jun 2022 23:06:01 +0100 Message-ID: Subject: Re: [edk2-devel] [PATCH] BaseTools/tools_def.txt: Add -march=x86-64 for X64 CLANG and GCC targets To: edk2-devel-groups-io , dann.frazier@canonical.com Cc: Bob Feng , Liming Gao , Yuwei Chen Content-Type: multipart/alternative; boundary="0000000000007c72a405e29d5ce1" --0000000000007c72a405e29d5ce1 Content-Type: text/plain; charset="UTF-8" This may be a strong opinion but I would consider toolchains that explicitly change the default -march from the well understood x86-64 (which all 64-bit processors support) to be totally broken. If a distro wants to switch the -march for the packages, override CFLAGS :) On Wed, Jun 29, 2022 at 10:57 PM dann frazier wrote: > Ping on this. Would it be more palatable if I limited the change only > to tested toolchains (gcc/clang)? Alternatively, is there a way to > submit this code to CI to verify the !(gcc|clang) variants? > > -dann > > On Fri, Jun 10, 2022 at 12:09:18PM -0600, dann frazier wrote: > > From: dann frazier > > > > Some Linux distributions are experimenting with builds that target a > > higher x86-64 psABI, such as x86-64-v3. To avoid inheriting these > > compiler defaults in edk2 builds, and therefore breaking compatibility > > with machines using older CPUs, explicitly target the generic x86-64 > > psABI. This is similar to how we explicitly specify the cpu type for > > some other architectures (-march=i586 for IA32, -march=armv7-a for ARM). > > > > Spot tested with OVMF builds using GCC5 and CLANG38. > > > > Signed-off-by: dann frazier > > --- > > BaseTools/Conf/tools_def.template | 20 ++++++++++---------- > > 1 file changed, 10 insertions(+), 10 deletions(-) > > > > diff --git a/BaseTools/Conf/tools_def.template > b/BaseTools/Conf/tools_def.template > > index adcd23f727..569d16fb3e 100755 > > --- a/BaseTools/Conf/tools_def.template > > +++ b/BaseTools/Conf/tools_def.template > > @@ -1885,7 +1885,7 @@ DEFINE GCC_DEPS_FLAGS = -MMD -MF > $@.deps > > DEFINE GCC48_ALL_CC_FLAGS = DEF(GCC_ALL_CC_FLAGS) > -ffunction-sections -fdata-sections -DSTRING_ARRAY_NAME=$(BASE_NAME)Strings > > DEFINE GCC48_IA32_X64_DLINK_COMMON = -nostdlib > -Wl,-n,-q,--gc-sections -z common-page-size=0x20 > > DEFINE GCC48_IA32_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m32 > -march=i586 -malign-double -fno-stack-protector -D EFI32 > -fno-asynchronous-unwind-tables -Wno-address > > -DEFINE GCC48_X64_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m64 > -fno-stack-protector "-DEFIAPI=__attribute__((ms_abi))" > -maccumulate-outgoing-args -mno-red-zone -Wno-address -mcmodel=small -fpie > -fno-asynchronous-unwind-tables -Wno-address > > +DEFINE GCC48_X64_CC_FLAGS = DEF(GCC48_ALL_CC_FLAGS) -m64 > -march=x86-64 -fno-stack-protector "-DEFIAPI=__attribute__((ms_abi))" > -maccumulate-outgoing-args -mno-red-zone -Wno-address -mcmodel=small -fpie > -fno-asynchronous-unwind-tables -Wno-address > > DEFINE GCC48_IA32_X64_ASLDLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_COMMON) > -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable > > DEFINE GCC48_IA32_X64_DLINK_FLAGS = DEF(GCC48_IA32_X64_DLINK_COMMON) > -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT) > -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive > > DEFINE GCC48_IA32_DLINK2_FLAGS = > -Wl,--defsym=PECOFF_HEADER_SIZE=0x220 DEF(GCC_DLINK2_FLAGS_COMMON) > > @@ -2613,15 +2613,15 @@ NOOPT_CLANG38_IA32_DLINK2_FLAGS = > DEF(GCC5_IA32_DLINK2_FLAGS) -O0 > > *_CLANG38_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) > DEF(CLANG38_X64_TARGET) > > *_CLANG38_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) > DEF(CLANG38_X64_TARGET) > > > > -DEBUG_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz > -flto DEF(CLANG38_X64_TARGET) -g > > +DEBUG_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > -march=x86-64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone > -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) -g > > DEBUG_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) > -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie > -mcmodel=small > > DEBUG_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O3 > > > > -RELEASE_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz > -flto DEF(CLANG38_X64_TARGET) > > +RELEASE_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > -march=x86-64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone > -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) > > RELEASE_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) > -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie > -mcmodel=small > > RELEASE_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O3 > > > > -NOOPT_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -O0 > DEF(CLANG38_X64_TARGET) -g > > +NOOPT_CLANG38_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > -march=x86-64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone > -mcmodel=small -fpie -O0 DEF(CLANG38_X64_TARGET) -g > > NOOPT_CLANG38_X64_DLINK_FLAGS = DEF(GCC5_IA32_X64_DLINK_FLAGS) > -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat=elf64-x86-64 -Wl,-pie -mcmodel=small > > NOOPT_CLANG38_X64_DLINK2_FLAGS = DEF(GCC5_X64_DLINK2_FLAGS) -O0 > > > > @@ -2798,17 +2798,17 @@ NOOPT_CLANGPDB_IA32_DLINK2_FLAGS = > > *_CLANGPDB_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) > DEF(CLANGPDB_X64_TARGET) > > *_CLANGPDB_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) > DEF(CLANGPDB_X64_TARGET) > > > > -DEBUG_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 > "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -Oz -flto > DEF(CLANGPDB_X64_TARGET) -gcodeview -funwind-tables > > +DEBUG_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 > -march=x86-64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone > -mcmodel=small -Oz -flto DEF(CLANGPDB_X64_TARGET) -gcodeview > -funwind-tables > > DEBUG_CLANGPDB_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB > /IGNORE:4001 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /Machine:X64 /DLL > /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO > /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=wineh /lldmap > > DEBUG_CLANGPDB_X64_DLINK2_FLAGS = > > DEBUG_CLANGPDB_X64_GENFW_FLAGS = --keepexceptiontable > > > > -RELEASE_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 > "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -Oz -flto > DEF(CLANGPDB_X64_TARGET) -fno-unwind-tables > > +RELEASE_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 > -march=x86-64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone > -mcmodel=small -Oz -flto DEF(CLANGPDB_X64_TARGET) -fno-unwind-tables > > RELEASE_CLANGPDB_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB > /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 > /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /DLL > /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO > /BASE:0 /MERGE:.rdata=.data /MLLVM:-exception-model=wineh /lldmap > > RELEASE_CLANGPDB_X64_DLINK2_FLAGS = > > RELEASE_CLANGPDB_X64_GENFW_FLAGS = > > > > -NOOPT_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 > "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -O0 > DEF(CLANGPDB_X64_TARGET) -gcodeview -funwind-tables > > +NOOPT_CLANGPDB_X64_CC_FLAGS = DEF(CLANGPDB_ALL_CC_FLAGS) -m64 > -march=x86-64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone > -mcmodel=small -O0 DEF(CLANGPDB_X64_TARGET) -gcodeview -funwind-tables > > NOOPT_CLANGPDB_X64_DLINK_FLAGS = /NOLOGO /NODEFAULTLIB > /IGNORE:4001 /OPT:REF /OPT:ICF=10 /ALIGN:32 /FILEALIGN:32 /Machine:X64 /DLL > /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO > /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=wineh /lldmap > > NOOPT_CLANGPDB_X64_DLINK2_FLAGS = > > NOOPT_CLANGPDB_X64_GENFW_FLAGS = --keepexceptiontable > > @@ -2901,15 +2901,15 @@ NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS = > DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O0 - > > *_CLANGDWARF_X64_ASLPP_FLAGS = DEF(GCC_ASLPP_FLAGS) > DEF(CLANG38_X64_TARGET) > > *_CLANGDWARF_X64_VFRPP_FLAGS = DEF(GCC_VFRPP_FLAGS) > DEF(CLANG38_X64_TARGET) > > > > -DEBUG_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz > -flto DEF(CLANG38_X64_TARGET) -g > > +DEBUG_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > -march=x86-64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone > -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) -g > > DEBUG_CLANGDWARF_X64_DLINK_FLAGS = > DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64 > -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small > -Wl,--apply-dynamic-relocs > > DEBUG_CLANGDWARF_X64_DLINK2_FLAGS = > DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld > > > > -RELEASE_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -Oz > -flto DEF(CLANG38_X64_TARGET) > > +RELEASE_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > -march=x86-64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone > -mcmodel=small -fpie -Oz -flto DEF(CLANG38_X64_TARGET) > > RELEASE_CLANGDWARF_X64_DLINK_FLAGS = > DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64 > -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small > -Wl,--apply-dynamic-relocs > > RELEASE_CLANGDWARF_X64_DLINK2_FLAGS = > DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O3 -fuse-ld=lld > > > > -NOOPT_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone -mcmodel=small -fpie -O0 > DEF(CLANG38_X64_TARGET) -g > > +NOOPT_CLANGDWARF_X64_CC_FLAGS = DEF(CLANG38_ALL_CC_FLAGS) -m64 > -march=x86-64 "-DEFIAPI=__attribute__((ms_abi))" -mno-red-zone > -mcmodel=small -fpie -O0 DEF(CLANG38_X64_TARGET) -g > > NOOPT_CLANGDWARF_X64_DLINK_FLAGS = > DEF(CLANGDWARF_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_x86_64 > -Wl,--oformat,elf64-x86-64 -Wl,-pie -mcmodel=small > -Wl,--apply-dynamic-relocs > > NOOPT_CLANGDWARF_X64_DLINK2_FLAGS = > DEF(CLANGDWARF_X64_DLINK2_FLAGS) -O0 -fuse-ld=lld > > > > > > > > -- Pedro Falcato --0000000000007c72a405e29d5ce1 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
This may be a strong opinion but I would consider toolchai= ns that explicitly change the default -march from the well understood x86-6= 4 (which all 64-bit processors support) to be totally broken. If a distro w= ants to switch the -march for the packages, override CFLAGS :)
On Wed, J= un 29, 2022 at 10:57 PM dann frazier <dann.frazier@canonical.com> wrote:
Ping on this. Would it be more palata= ble if I limited the change only
to tested toolchains (gcc/clang)? Alternatively, is there a way to
submit this code to CI to verify the !(gcc|clang) variants?

=C2=A0 -dann

On Fri, Jun 10, 2022 at 12:09:18PM -0600, dann frazier wrote:
> From: dann frazier <dann.frazier@canonical.com>
>
> Some Linux distributions are experimenting with builds that target a > higher x86-64 psABI, such as x86-64-v3. To avoid inheriting these
> compiler defaults in edk2 builds, and therefore breaking compatibility=
> with machines using older CPUs, explicitly target the generic x86-64 > psABI. This is similar to how we explicitly specify the cpu type for > some other architectures (-march=3Di586 for IA32, -march=3Darmv7-a for= ARM).
>
> Spot tested with OVMF builds using GCC5 and CLANG38.
>
> Signed-off-by: dann frazier <dann.frazier@canonical.com>
> ---
>=C2=A0 BaseTools/Conf/tools_def.template | 20 ++++++++++----------
>=C2=A0 1 file changed, 10 insertions(+), 10 deletions(-)
>
> diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_= def.template
> index adcd23f727..569d16fb3e 100755
> --- a/BaseTools/Conf/tools_def.template
> +++ b/BaseTools/Conf/tools_def.template
> @@ -1885,7 +1885,7 @@ DEFINE GCC_DEPS_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =3D -MMD -MF $@.deps
>=C2=A0 DEFINE GCC48_ALL_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =3D DEF(GCC_ALL_CC_FLAGS) -ffunction-sections -fdata-sections -DSTRING_= ARRAY_NAME=3D$(BASE_NAME)Strings
>=C2=A0 DEFINE GCC48_IA32_X64_DLINK_COMMON=C2=A0 =C2=A0=3D -nostdlib -Wl= ,-n,-q,--gc-sections -z common-page-size=3D0x20
>=C2=A0 DEFINE GCC48_IA32_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0=3D DEF(GCC48_ALL_CC_FLAGS) -m32 -march=3Di586 -malign-double -fno-stack= -protector -D EFI32 -fno-asynchronous-unwind-tables -Wno-address
> -DEFINE GCC48_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =3D DEF(GCC48_ALL_CC_FLAGS) -m64 -fno-stack-protector "-DEFIAPI=3D__at= tribute__((ms_abi))" -maccumulate-outgoing-args -mno-red-zone -Wno-add= ress -mcmodel=3Dsmall -fpie -fno-asynchronous-unwind-tables -Wno-address > +DEFINE GCC48_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =3D DEF(GCC48_ALL_CC_FLAGS) -m64 -march=3Dx86-64 -fno-stack-protector "= ;-DEFIAPI=3D__attribute__((ms_abi))" -maccumulate-outgoing-args -mno-r= ed-zone -Wno-address -mcmodel=3Dsmall -fpie -fno-asynchronous-unwind-tables= -Wno-address
>=C2=A0 DEFINE GCC48_IA32_X64_ASLDLINK_FLAGS =3D DEF(GCC48_IA32_X64_DLIN= K_COMMON) -Wl,--entry,ReferenceAcpiTable -u ReferenceAcpiTable
>=C2=A0 DEFINE GCC48_IA32_X64_DLINK_FLAGS=C2=A0 =C2=A0 =3D DEF(GCC48_IA3= 2_X64_DLINK_COMMON) -Wl,--entry,$(IMAGE_ENTRY_POINT) -u $(IMAGE_ENTRY_POINT= ) -Wl,-Map,$(DEST_DIR_DEBUG)/$(BASE_NAME).map,--whole-archive
>=C2=A0 DEFINE GCC48_IA32_DLINK2_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0=3D -Wl= ,--defsym=3DPECOFF_HEADER_SIZE=3D0x220 DEF(GCC_DLINK2_FLAGS_COMMON)
> @@ -2613,15 +2613,15 @@ NOOPT_CLANG38_IA32_DLINK2_FLAGS=C2=A0 =C2=A0 = =C2=A0=3D DEF(GCC5_IA32_DLINK2_FLAGS) -O0
>=C2=A0 *_CLANG38_X64_ASLPP_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =3D = DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_X64_TARGET)
>=C2=A0 *_CLANG38_X64_VFRPP_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =3D = DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_X64_TARGET)
>=C2=A0
> -DEBUG_CLANG38_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(C= LANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=3D__attribute__((ms_abi))" -m= no-red-zone -mcmodel=3Dsmall -fpie -Oz -flto DEF(CLANG38_X64_TARGET) -g
> +DEBUG_CLANG38_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(C= LANG38_ALL_CC_FLAGS) -m64 -march=3Dx86-64 "-DEFIAPI=3D__attribute__((m= s_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -Oz -flto DEF(CLANG38_X6= 4_TARGET) -g
>=C2=A0 DEBUG_CLANG38_X64_DLINK_FLAGS=C2=A0 =C2=A0 =C2=A0 =3D DEF(GCC5_I= A32_X64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=3Delf64-x= 86-64 -Wl,-pie -mcmodel=3Dsmall
>=C2=A0 DEBUG_CLANG38_X64_DLINK2_FLAGS=C2=A0 =C2=A0 =C2=A0=3D DEF(GCC5_X= 64_DLINK2_FLAGS) -O3
>=C2=A0
> -RELEASE_CLANG38_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(CLANG3= 8_ALL_CC_FLAGS) -m64 "-DEFIAPI=3D__attribute__((ms_abi))" -mno-re= d-zone -mcmodel=3Dsmall -fpie -Oz -flto DEF(CLANG38_X64_TARGET)
> +RELEASE_CLANG38_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(CLANG3= 8_ALL_CC_FLAGS) -m64 -march=3Dx86-64 "-DEFIAPI=3D__attribute__((ms_abi= ))" -mno-red-zone -mcmodel=3Dsmall -fpie -Oz -flto DEF(CLANG38_X64_TAR= GET)
>=C2=A0 RELEASE_CLANG38_X64_DLINK_FLAGS=C2=A0 =C2=A0 =3D DEF(GCC5_IA32_X= 64_DLINK_FLAGS) -flto -Wl,-Oz -Wl,-melf_x86_64 -Wl,--oformat=3Delf64-x86-64= -Wl,-pie -mcmodel=3Dsmall
>=C2=A0 RELEASE_CLANG38_X64_DLINK2_FLAGS=C2=A0 =C2=A0=3D DEF(GCC5_X64_DL= INK2_FLAGS) -O3
>=C2=A0
> -NOOPT_CLANG38_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(C= LANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=3D__attribute__((ms_abi))" -m= no-red-zone -mcmodel=3Dsmall -fpie -O0 DEF(CLANG38_X64_TARGET) -g
> +NOOPT_CLANG38_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(C= LANG38_ALL_CC_FLAGS) -m64 -march=3Dx86-64 "-DEFIAPI=3D__attribute__((m= s_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -O0 DEF(CLANG38_X64_TARG= ET) -g
>=C2=A0 NOOPT_CLANG38_X64_DLINK_FLAGS=C2=A0 =C2=A0 =C2=A0 =3D DEF(GCC5_I= A32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat=3Delf64-x86-64 = -Wl,-pie -mcmodel=3Dsmall
>=C2=A0 NOOPT_CLANG38_X64_DLINK2_FLAGS=C2=A0 =C2=A0 =C2=A0=3D DEF(GCC5_X= 64_DLINK2_FLAGS) -O0
>=C2=A0
> @@ -2798,17 +2798,17 @@ NOOPT_CLANGPDB_IA32_DLINK2_FLAGS=C2=A0 =C2=A0 = =C2=A0=3D
>=C2=A0 *_CLANGPDB_X64_ASLPP_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =3D= DEF(GCC_ASLPP_FLAGS) DEF(CLANGPDB_X64_TARGET)
>=C2=A0 *_CLANGPDB_X64_VFRPP_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =3D= DEF(GCC_VFRPP_FLAGS) DEF(CLANGPDB_X64_TARGET)
>=C2=A0
> -DEBUG_CLANGPDB_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(= CLANGPDB_ALL_CC_FLAGS) -m64 "-DEFIAPI=3D__attribute__((ms_abi))" = -mno-red-zone -mcmodel=3Dsmall -Oz -flto DEF(CLANGPDB_X64_TARGET) -gcodevie= w=C2=A0 -funwind-tables
> +DEBUG_CLANGPDB_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(= CLANGPDB_ALL_CC_FLAGS) -m64 -march=3Dx86-64 "-DEFIAPI=3D__attribute__(= (ms_abi))" -mno-red-zone -mcmodel=3Dsmall -Oz -flto DEF(CLANGPDB_X64_T= ARGET) -gcodeview=C2=A0 -funwind-tables
>=C2=A0 DEBUG_CLANGPDB_X64_DLINK_FLAGS=C2=A0 =C2=A0 =C2=A0 =3D /NOLOGO /= NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /ALIGN:32 /FILEALIGN:32 /M= achine:X64 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRI= VER /SAFESEH:NO /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=3Dwineh /lldma= p
>=C2=A0 DEBUG_CLANGPDB_X64_DLINK2_FLAGS=C2=A0 =C2=A0 =C2=A0=3D
>=C2=A0 DEBUG_CLANGPDB_X64_GENFW_FLAGS=C2=A0 =C2=A0 =C2=A0 =3D --keepexc= eptiontable
>=C2=A0
> -RELEASE_CLANGPDB_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(CLANG= PDB_ALL_CC_FLAGS) -m64 "-DEFIAPI=3D__attribute__((ms_abi))" -mno-= red-zone -mcmodel=3Dsmall -Oz -flto DEF(CLANGPDB_X64_TARGET) -fno-unwind-ta= bles
> +RELEASE_CLANGPDB_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(CLANG= PDB_ALL_CC_FLAGS) -m64 -march=3Dx86-64 "-DEFIAPI=3D__attribute__((ms_a= bi))" -mno-red-zone -mcmodel=3Dsmall -Oz -flto DEF(CLANGPDB_X64_TARGET= ) -fno-unwind-tables
>=C2=A0 RELEASE_CLANGPDB_X64_DLINK_FLAGS=C2=A0 =C2=A0 =3D /NOLOGO /NODEF= AULTLIB /IGNORE:4001 /IGNORE:4254 /OPT:REF /OPT:ICF=3D10 /ALIGN:32 /FILEALI= GN:32 /SECTION:.xdata,D /SECTION:.pdata,D /Machine:X64 /DLL /ENTRY:$(IMAGE_= ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRIVER /SAFESEH:NO /BASE:0 /MERGE:= .rdata=3D.data /MLLVM:-exception-model=3Dwineh /lldmap
>=C2=A0 RELEASE_CLANGPDB_X64_DLINK2_FLAGS=C2=A0 =C2=A0=3D
>=C2=A0 RELEASE_CLANGPDB_X64_GENFW_FLAGS=C2=A0 =C2=A0 =3D
>=C2=A0
> -NOOPT_CLANGPDB_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(= CLANGPDB_ALL_CC_FLAGS) -m64 "-DEFIAPI=3D__attribute__((ms_abi))" = -mno-red-zone -mcmodel=3Dsmall -O0 DEF(CLANGPDB_X64_TARGET) -gcodeview -fun= wind-tables
> +NOOPT_CLANGPDB_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(= CLANGPDB_ALL_CC_FLAGS) -m64 -march=3Dx86-64 "-DEFIAPI=3D__attribute__(= (ms_abi))" -mno-red-zone -mcmodel=3Dsmall -O0 DEF(CLANGPDB_X64_TARGET)= -gcodeview -funwind-tables
>=C2=A0 NOOPT_CLANGPDB_X64_DLINK_FLAGS=C2=A0 =C2=A0 =C2=A0 =3D /NOLOGO /= NODEFAULTLIB /IGNORE:4001 /OPT:REF /OPT:ICF=3D10 /ALIGN:32 /FILEALIGN:32 /M= achine:X64 /DLL /ENTRY:$(IMAGE_ENTRY_POINT) /SUBSYSTEM:EFI_BOOT_SERVICE_DRI= VER /SAFESEH:NO /BASE:0 /DEBUG:GHASH /MLLVM:-exception-model=3Dwineh /lldma= p
>=C2=A0 NOOPT_CLANGPDB_X64_DLINK2_FLAGS=C2=A0 =C2=A0 =C2=A0=3D
>=C2=A0 NOOPT_CLANGPDB_X64_GENFW_FLAGS=C2=A0 =C2=A0 =C2=A0 =3D --keepexc= eptiontable
> @@ -2901,15 +2901,15 @@ NOOPT_CLANGDWARF_IA32_DLINK2_FLAGS=C2=A0 =C2= =A0 =C2=A0=3D DEF(CLANGDWARF_IA32_DLINK2_FLAGS) -O0 -
>=C2=A0 *_CLANGDWARF_X64_ASLPP_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_X64_TARGET)
>=C2=A0 *_CLANGDWARF_X64_VFRPP_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_X64_TARGET)
>=C2=A0
> -DEBUG_CLANGDWARF_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DE= F(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=3D__attribute__((ms_abi))"= -mno-red-zone -mcmodel=3Dsmall -fpie -Oz -flto DEF(CLANG38_X64_TARGET) -g<= br> > +DEBUG_CLANGDWARF_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DE= F(CLANG38_ALL_CC_FLAGS) -m64 -march=3Dx86-64 "-DEFIAPI=3D__attribute__= ((ms_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -Oz -flto DEF(CLANG38= _X64_TARGET) -g
>=C2=A0 DEBUG_CLANGDWARF_X64_DLINK_FLAGS=C2=A0 =C2=A0 =C2=A0 =3D DEF(CLA= NGDWARF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,= elf64-x86-64 -Wl,-pie -mcmodel=3Dsmall -Wl,--apply-dynamic-relocs
>=C2=A0 DEBUG_CLANGDWARF_X64_DLINK2_FLAGS=C2=A0 =C2=A0 =C2=A0=3D DEF(CLA= NGDWARF_X64_DLINK2_FLAGS) -O3 -fuse-ld=3Dlld
>=C2=A0
> -RELEASE_CLANGDWARF_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(CLA= NG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=3D__attribute__((ms_abi))" -mno= -red-zone -mcmodel=3Dsmall -fpie -Oz -flto DEF(CLANG38_X64_TARGET)
> +RELEASE_CLANGDWARF_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DEF(CLA= NG38_ALL_CC_FLAGS) -m64 -march=3Dx86-64 "-DEFIAPI=3D__attribute__((ms_= abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -Oz -flto DEF(CLANG38_X64_= TARGET)
>=C2=A0 RELEASE_CLANGDWARF_X64_DLINK_FLAGS=C2=A0 =C2=A0 =3D DEF(CLANGDWA= RF_IA32_X64_DLINK_FLAGS) -flto -Wl,-O3 -Wl,-melf_x86_64 -Wl,--oformat,elf64= -x86-64 -Wl,-pie -mcmodel=3Dsmall -Wl,--apply-dynamic-relocs
>=C2=A0 RELEASE_CLANGDWARF_X64_DLINK2_FLAGS=C2=A0 =C2=A0=3D DEF(CLANGDWA= RF_X64_DLINK2_FLAGS) -O3 -fuse-ld=3Dlld
>=C2=A0
> -NOOPT_CLANGDWARF_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DE= F(CLANG38_ALL_CC_FLAGS) -m64 "-DEFIAPI=3D__attribute__((ms_abi))"= -mno-red-zone -mcmodel=3Dsmall -fpie -O0 DEF(CLANG38_X64_TARGET) -g
> +NOOPT_CLANGDWARF_X64_CC_FLAGS=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=3D DE= F(CLANG38_ALL_CC_FLAGS) -m64 -march=3Dx86-64 "-DEFIAPI=3D__attribute__= ((ms_abi))" -mno-red-zone -mcmodel=3Dsmall -fpie -O0 DEF(CLANG38_X64_T= ARGET) -g
>=C2=A0 NOOPT_CLANGDWARF_X64_DLINK_FLAGS=C2=A0 =C2=A0 =C2=A0 =3D DEF(CLA= NGDWARF_IA32_X64_DLINK_FLAGS) -Wl,-O0 -Wl,-melf_x86_64 -Wl,--oformat,elf64-= x86-64 -Wl,-pie -mcmodel=3Dsmall -Wl,--apply-dynamic-relocs
>=C2=A0 NOOPT_CLANGDWARF_X64_DLINK2_FLAGS=C2=A0 =C2=A0 =C2=A0=3D DEF(CLA= NGDWARF_X64_DLINK2_FLAGS) -O0 -fuse-ld=3Dlld
>=C2=A0







--
Pedro Falcato
--0000000000007c72a405e29d5ce1--