X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=m4%2Falign.m4;h=25e1ee2d489ac3ed5035197c8f93695a666b4187;hb=e9b8cd447a2f21f48414e94c8e9ad38b9f78b9b0;hp=256300e377902d73a789348b63eae0bf6045ce8e;hpb=179946965cc0f171e4af1bd053b42ec36314c86e;p=oweals%2Fgnunet.git diff --git a/m4/align.m4 b/m4/align.m4 index 256300e37..25e1ee2d4 100644 --- a/m4/align.m4 +++ b/m4/align.m4 @@ -13,12 +13,16 @@ AC_DEFUN([AC_UNALIGNED_64_ACCESS], [AC_CACHE_CHECK([whether unaligned 64-bit access works], ac_cv_unaligned_64_access, [ - AC_RUN_IFELSE(AC_LANG_PROGRAM([[struct S { int a,b,c;};]], - [[struct S s = {0,0,0}; long long * p = &s.b; - long long x = *p; return (int) x*x;]]), + AC_RUN_IFELSE([AC_LANG_PROGRAM([[struct S { int a,b,c;};]], + [[struct S s = {0,0,0}; long long * p = (long long *) &s.b; + void *bp = malloc (50); + long long x = *p; + long long *be = (long long*) &bp[1]; + long long y = *be; + return (int) x*y;]]), ac_cv_unaligned_64_access=yes, ac_cv_unaligned_64_access=no, - ac_cv_unaligned_64_access=no) + ac_cv_unaligned_64_access=no]) ]) case "$ac_cv_unaligned_64_access" in *yes) value=1;;