On 2021-08-25, Daniel Kiper wrote: >On Mon, Aug 23, 2021 at 11:18:38PM -0700, Fangrui Song wrote: >> Clang does not support -falign-jumps and only recently gained support >> for -falign-loops. Test all the alignment options to avoid passing >> unrecognized options to Clang: >> >> clang-14: error: optimization flag '-falign-jumps=1' is not supported [-Werror,-Wignored-optimization-argument] >> >> When compiled with older Clang, the alignment options are not added, so >> just avoid the complexity for each option. >> >> Signed-off-by: Fangrui Song >> --- >> configure.ac | 5 +++-- >> 1 file changed, 3 insertions(+), 2 deletions(-) >> >> diff --git a/configure.ac b/configure.ac >> index 9a12151bd..8625e6776 100644 >> --- a/configure.ac >> +++ b/configure.ac >> @@ -798,8 +798,9 @@ fi >> >> # Force no alignment to save space on i386. >> if test "x$target_cpu" = xi386; then >> - AC_CACHE_CHECK([whether -falign-loops works], [grub_cv_cc_falign_loop], [ >> - CFLAGS="$TARGET_CFLAGS -falign-loops=1 -Werror" >> + AC_CACHE_CHECK([whether -falign-jumps=1 -falign-loops=1 -falign-functions=1 works], >> + [grub_cv_cc_falign_loop], [ >> + CFLAGS="$TARGET_CFLAGS -falign-jumps=1 -falign-loops=1 -falign-functions=1 -Werror" > >I would prefer if you add a separate check for every -falign-* option. > >Daniel The attached patch checks both -falign-jumps=1 and -falign-loops=1