[Qemu-block] [PATCH v2 4/6] exec.c: Use pow2floor() rather than hand-calculation

2015-07-24 Thread Peter Maydell
Use pow2floor() to round down to the nearest power of 2,
rather than an inline calculation.

Signed-off-by: Peter Maydell 
---
 exec.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/exec.c b/exec.c
index 7d60e15..4710e2d 100644
--- a/exec.c
+++ b/exec.c
@@ -2371,9 +2371,7 @@ static int memory_access_size(MemoryRegion *mr, unsigned 
l, hwaddr addr)
 if (l > access_size_max) {
 l = access_size_max;
 }
-if (l & (l - 1)) {
-l = 1 << (qemu_fls(l) - 1);
-}
+l = pow2floor(l);
 
 return l;
 }
-- 
1.9.1




Re: [Qemu-block] [PATCH v2 4/6] exec.c: Use pow2floor() rather than hand-calculation

2015-08-14 Thread Paolo Bonzini


On 24/07/2015 14:33, Peter Maydell wrote:
> Use pow2floor() to round down to the nearest power of 2,
> rather than an inline calculation.
> 
> Signed-off-by: Peter Maydell 
> ---
>  exec.c | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/exec.c b/exec.c
> index 7d60e15..4710e2d 100644
> --- a/exec.c
> +++ b/exec.c
> @@ -2371,9 +2371,7 @@ static int memory_access_size(MemoryRegion *mr, 
> unsigned l, hwaddr addr)
>  if (l > access_size_max) {
>  l = access_size_max;
>  }
> -if (l & (l - 1)) {
> -l = 1 << (qemu_fls(l) - 1);
> -}
> +l = pow2floor(l);

Reviewed-by: Paolo Bonzini 

>  return l;
>  }
>