On Thu, May 10, 2018 at 1:43 AM, Thomas Petazzoni <thomas.petazz...@bootlin.com> wrote: > Hello Matt, > > On Wed, 9 May 2018 16:30:12 -0700, Matt Turner wrote: > >> Hi Thomas, >> >> I rebased this patch on >> >> commit 54ba73ef102f7b9085922686bb31719539e0dc3c >> Author: Nicolas Boichat <drink...@chromium.org> >> Date: Thu Apr 5 09:33:09 2018 +0800 >> >> configure.ac/meson.build: Fix -latomic test >> >> and readded the AC_MSG_CHECKING/AC_MSG_RESULT. If it looks good to you, >> I'll commit it. > > Thanks for this new iteration! I didn't test it, but it looks good to > me. Just one minor nit below. > >> -dnl Check for new-style atomic builtins >> -AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ >> +dnl Check for new-style atomic builtins. We first check without linking to >> +dnl -latomic. >> +AC_MSG_CHECKING(whether __atomic_load_n is supported) >> +AC_LINK_IFELSE([AC_LANG_SOURCE([[ >> +#include <stdint.h> >> int main() { >> - int n; >> - return __atomic_load_n(&n, __ATOMIC_ACQUIRE); >> -}]])], GCC_ATOMIC_BUILTINS_SUPPORTED=1) >> -if test "x$GCC_ATOMIC_BUILTINS_SUPPORTED" = x1; then >> - DEFINES="$DEFINES -DUSE_GCC_ATOMIC_BUILTINS" >> - dnl On some platforms, new-style atomics need a helper library >> - AC_MSG_CHECKING(whether -latomic is needed) >> - AC_LINK_IFELSE([AC_LANG_SOURCE([[ >> - #include <stdint.h> >> struct { >> uint64_t *v; >> } x; >> - int main() { >> + return (int)__atomic_load_n(x.v, __ATOMIC_ACQUIRE); >> +}]])], GCC_ATOMIC_BUILTINS_SUPPORTED=yes, GCC_ATOMIC_BUILTINS_SUPPORTED=no) >> + >> +dnl If that didn't work, we try linking with -latomic, which is needed on >> some >> +dnl platforms. >> +if test "x$GCC_ATOMIC_BUILTINS_SUPPORTED" != xyes; then >> + save_LDFLAGS=$LDFLAGS >> + LDFLAGS="$LDFLAGS -latomic" >> + AC_LINK_IFELSE([AC_LANG_SOURCE([[ >> + #include <stdint.h> >> + int main() { >> + struct { >> + uint64_t *v; >> + } x; >> return (int)__atomic_load_n(x.v, __ATOMIC_ACQUIRE); >> - }]])], GCC_ATOMIC_BUILTINS_NEED_LIBATOMIC=no, >> GCC_ATOMIC_BUILTINS_NEED_LIBATOMIC=yes) >> - AC_MSG_RESULT($GCC_ATOMIC_BUILTINS_NEED_LIBATOMIC) >> - if test "x$GCC_ATOMIC_BUILTINS_NEED_LIBATOMIC" = xyes; then >> - LIBATOMIC_LIBS="-latomic" >> - fi >> + }]])], GCC_ATOMIC_BUILTINS_SUPPORTED=yes LIBATOMIC_LIBS="-latomic", >> + GCC_ATOMIC_BUILTINS_SUPPORTED=no) >> + LDFLAGS=$save_LDFLAGS >> + >> + > > Those two empty lines don't seem to be very useful.
Thanks for catching that. I think I was toying with another AC_MSG_CHECKING for whether -latomic is needed and decided against it. Fixed and pushed. Thanks for the patch! _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev