From b55c586faca28863db16a2148b69aaa37aaa797e Mon Sep 17 00:00:00 2001 From: Martin Kroeker Date: Thu, 14 Feb 2019 15:21:36 +0100 Subject: [PATCH] Fix missing clobber in x86/x86_64 blas_quickdivide inline assembly function (#2017) * Fix missing clobber in blas_quickdivide assembly --- common_x86.h | 2 +- common_x86_64.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/common_x86.h b/common_x86.h index 4f538c948..3fdffe2a8 100644 --- a/common_x86.h +++ b/common_x86.h @@ -187,7 +187,7 @@ static __inline int blas_quickdivide(unsigned int x, unsigned int y){ y = blas_quick_divide_table[y]; - __asm__ __volatile__ ("mull %0" :"=d" (result) :"a"(x), "0" (y)); + __asm__ __volatile__ ("mull %0" :"=d" (result), "+a"(x): "0" (y)); return result; #endif diff --git a/common_x86_64.h b/common_x86_64.h index f27c1e9be..718a81050 100644 --- a/common_x86_64.h +++ b/common_x86_64.h @@ -210,7 +210,7 @@ static __inline int blas_quickdivide(unsigned int x, unsigned int y){ y = blas_quick_divide_table[y]; - __asm__ __volatile__ ("mull %0" :"=d" (result) :"a"(x), "0" (y)); + __asm__ __volatile__ ("mull %0" :"=d" (result), "+a"(x) : "0" (y)); return result; }