From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mout02.posteo.de (mout02.posteo.de [185.67.36.66]) by mx.groups.io with SMTP id smtpd.web11.2464.1629575784665924240 for ; Sat, 21 Aug 2021 12:56:25 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@posteo.de header.s=2017 header.b=kXee9DV2; spf=pass (domain: posteo.de, ip: 185.67.36.66, mailfrom: mhaeuser@posteo.de) Received: from submission (posteo.de [89.146.220.130]) by mout02.posteo.de (Postfix) with ESMTPS id 4D83F240105 for ; Sat, 21 Aug 2021 21:56:22 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.de; s=2017; t=1629575782; bh=7BEsmu3fIBkuFvZBdRzDQAA5rOXr/OVdy9Jgppt5i8I=; h=From:To:Cc:Subject:Date:From; b=kXee9DV2HfPJNuutgPSMuXfMF8FO9VX9llEDPxhbnGjV5Ox14FqDs3hPJX4/3fIRJ eU6dTQjN8f2SIQvbFUhkEUmledgwaXLBiL/03RjVTnbJfcpJa81RKi2YNicdy97EVv otXGkm6QsHG3sr25N3AU6iQsv0/Wwo7a6NoowsvDlxtF3OwYLsmfNxo1CgixFvMkDc ZgLXWPIwMcnfyVUmDijOkQVP6rECgB4jOoEYwQZZSFpzmF24pUBJvXdTW+WkoBAPpJ 4J0jURnaMwu2Gc1lrclJwaEROgNqOAQOVazaGttL9TTTG+v0IXo71KiiRcL5ih09aZ G/48HgQfKww0g== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4GsTlm3pnKz9rxP; Sat, 21 Aug 2021 21:56:20 +0200 (CEST) From: =?UTF-8?B?TWFydmluIEjDpHVzZXI=?= To: devel@edk2.groups.io Cc: Bob Feng , Liming Gao , Yuwei Chen , Vitaly Cheptsov Subject: [PATCH 1/1] BaseTools/tools_def: Correct 64-bit type alignment for IA32 CLANG38 Date: Sat, 21 Aug 2021 19:55:43 +0000 Message-Id: <22465b05fa6b89a8fb8a44e9e447b4f559368e9f.1629567885.git.mhaeuser@posteo.de> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable The CLANG38 toolchain aligns 64-bit data types on an 4-Byte boundary for IA32, which is the default for the GNU ABI. For the Microsoft ABI used by UEFI however, natural alignment holds for all data types on all architectures. Add the "-malign-double" flag already used by the GCC toolchains to ensure 64-bit data types are aligned on an 8-Byte boundary instead. Cc: Bob Feng Cc: Liming Gao Cc: Yuwei Chen Cc: Vitaly Cheptsov Signed-off-by: Marvin H=C3=A4user --- BaseTools/Conf/tools_def.template | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.t= emplate index 2e6b382ab623..738768f8baf8 100755 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -2594,15 +2594,15 @@ DEFINE CLANG38_ALL_CC_FLAGS =3D DEF(GCC48_A= LL_CC_FLAGS) DEF(CLANG38_WARNIN *_CLANG38_IA32_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) DEF(CLANG38_I= A32_TARGET)=0D *_CLANG38_IA32_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) DEF(CLANG38_I= A32_TARGET)=0D =0D -DEBUG_CLANG38_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz= -flto -march=3Di586 DEF(CLANG38_IA32_TARGET) -g=0D +DEBUG_CLANG38_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -ma= lign-double -Oz -flto -march=3Di586 DEF(CLANG38_IA32_TARGET) -g=0D DEBUG_CLANG38_IA32_DLINK_FLAGS =3D DEF(GCC5_IA32_X64_DLINK_FLAGS) -fl= to -Wl,-Oz -Wl,-melf_i386 -Wl,--oformat=3Delf32-i386=0D DEBUG_CLANG38_IA32_DLINK2_FLAGS =3D DEF(GCC5_IA32_DLINK2_FLAGS) -O3=0D =0D -RELEASE_CLANG38_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -Oz= -flto -march=3Di586 DEF(CLANG38_IA32_TARGET)=0D +RELEASE_CLANG38_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -ma= lign-double -Oz -flto -march=3Di586 DEF(CLANG38_IA32_TARGET)=0D RELEASE_CLANG38_IA32_DLINK_FLAGS =3D DEF(GCC5_IA32_X64_DLINK_FLAGS) -fl= to -Wl,-Oz -Wl,-melf_i386 -Wl,--oformat=3Delf32-i386=0D RELEASE_CLANG38_IA32_DLINK2_FLAGS =3D DEF(GCC5_IA32_DLINK2_FLAGS) -O3=0D =0D -NOOPT_CLANG38_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -O0= -march=3Di586 DEF(CLANG38_IA32_TARGET) -g=0D +NOOPT_CLANG38_IA32_CC_FLAGS =3D DEF(CLANG38_ALL_CC_FLAGS) -m32 -ma= lign-double -O0 -march=3Di586 DEF(CLANG38_IA32_TARGET) -g=0D NOOPT_CLANG38_IA32_DLINK_FLAGS =3D DEF(GCC5_IA32_X64_DLINK_FLAGS) -Wl= ,-O0 -Wl,-melf_i386 -Wl,--oformat=3Delf32-i386=0D NOOPT_CLANG38_IA32_DLINK2_FLAGS =3D DEF(GCC5_IA32_DLINK2_FLAGS) -O0=0D =0D --=20 2.31.1