The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=473786a131b0546e60fc8330f79e270e145e1bfd
commit 473786a131b0546e60fc8330f79e270e145e1bfd Author: Warner Losh <[email protected]> AuthorDate: 2025-11-16 17:34:58 +0000 Commit: Warner Losh <[email protected]> CommitDate: 2025-11-16 18:29:03 +0000 edk2: Tweak the tests for UEFI Specification Data Type requirements On x86 these trigger for 32-bit builds. We only ever (will) do that for the 32-bit loader that starts a 64 bit kernel for ia32. For the moment, take the training wheels off, though most likely some compile flags need to be used to change the i386 ABI to force *int64_t alignment to 64 bits or some other horror as yet ill-concieved. Despite this assertion, the ia32 to boot 64-bit kernels loaders seem to work. Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D53653 --- sys/contrib/edk2/Include/Base.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/contrib/edk2/Include/Base.h b/sys/contrib/edk2/Include/Base.h index e3d03a9cc5ab..2b53e118b33f 100644 --- a/sys/contrib/edk2/Include/Base.h +++ b/sys/contrib/edk2/Include/Base.h @@ -841,8 +841,10 @@ STATIC_ASSERT (ALIGNOF (INT16) == sizeof (INT16), "Alignment of INT16 does not STATIC_ASSERT (ALIGNOF (UINT16) == sizeof (UINT16), "Alignment of UINT16 does not meet UEFI Specification Data Type requirements"); STATIC_ASSERT (ALIGNOF (INT32) == sizeof (INT32), "Alignment of INT32 does not meet UEFI Specification Data Type requirements"); STATIC_ASSERT (ALIGNOF (UINT32) == sizeof (UINT32), "Alignment of UINT32 does not meet UEFI Specification Data Type requirements"); +#ifndef _STANDALONE STATIC_ASSERT (ALIGNOF (INT64) == sizeof (INT64), "Alignment of INT64 does not meet UEFI Specification Data Type requirements"); STATIC_ASSERT (ALIGNOF (UINT64) == sizeof (UINT64), "Alignment of UINT64 does not meet UEFI Specification Data Type requirements"); +#endif STATIC_ASSERT (ALIGNOF (CHAR8) == sizeof (CHAR8), "Alignment of CHAR8 does not meet UEFI Specification Data Type requirements"); STATIC_ASSERT (ALIGNOF (CHAR16) == sizeof (CHAR16), "Alignment of CHAR16 does not meet UEFI Specification Data Type requirements"); STATIC_ASSERT (ALIGNOF (INTN) == sizeof (INTN), "Alignment of INTN does not meet UEFI Specification Data Type requirements");
