]> git.proxmox.com Git - mirror_edk2.git/commit - BaseTools/Conf/tools_def.template
BaseTools: Fix IA32 UINT64 alignment for CLANG toolchains
authorPedro Falcato <pedro.falcato@gmail.com>
Fri, 16 Dec 2022 19:50:20 +0000 (03:50 +0800)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Fri, 30 Dec 2022 03:31:51 +0000 (03:31 +0000)
commitc5d68ef6e7553ab2894f541eba4e982428ecbd53
treea84eaf56c6085d2c9cfcf7a4b0d256389788421a
parenta086f4a63bc0295b0b02f8ee76381c6b437122bf
BaseTools: Fix IA32 UINT64 alignment for CLANG toolchains

Currently, UINT64 is not 8-byte aligned for CLANG* toolchains on IA32,
which causes ABI differences between IA32 and X64 in such simple examples as:

struct S {UINT32 A; UINT64 B;};

Pass -malign-double to align it to 8 bytes, as is done for GCC already.

Signed-off-by: Pedro Falcato <pedro.falcato@gmail.com>
Cc: Marvin H?user <mhaeuser@posteo.de>
Cc: Bob Feng <bob.c.feng@intel.com>
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Yuwei Chen <yuwei.chen@intel.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
Reviewed-by: Bob Feng <bob.c.feng@intel.com>
BaseTools/Conf/tools_def.template