diff options
-rw-r--r-- | mpi/longlong.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/mpi/longlong.h b/mpi/longlong.h index c0f24c85..6573c984 100644 --- a/mpi/longlong.h +++ b/mpi/longlong.h @@ -305,9 +305,13 @@ extern UDItype __udiv_qrnnd (); (ph) = __ph; \ } while (0) # define count_leading_zeros(count, x) \ - __asm__ ("clz %0, %1\n" \ - : "=r" ((count)) \ - : "r" ((UDItype)(x))) + do { \ + UDItype __co; \ + __asm__ ("clz %0, %1\n" \ + : "=r" (__co) \ + : "r" ((UDItype)(x))); \ + (count) = __co; \ + } while (0) #endif /* __aarch64__ */ /*************************************** |