Re: [PATCH 5/9] cputlb: Hoist tlb portions in tlb_flush_one_mmuidx_locked

2020-01-20 Thread Alistair Francis
On Thu, Jan 9, 2020 at 12:55 PM Richard Henderson
 wrote:
>
> No functional change, but the smaller expressions make
> the code easier to read.
>
> Signed-off-by: Richard Henderson 

Reviewed-by: Alistair Francis 

Alistair

> ---
>  accel/tcg/cputlb.c | 19 ++-
>  1 file changed, 10 insertions(+), 9 deletions(-)
>
> diff --git a/accel/tcg/cputlb.c b/accel/tcg/cputlb.c
> index c7dc1dc85a..eff427f137 100644
> --- a/accel/tcg/cputlb.c
> +++ b/accel/tcg/cputlb.c
> @@ -230,15 +230,16 @@ static void tlb_mmu_resize_locked(CPUTLBDesc *desc, 
> CPUTLBDescFast *fast)
>
>  static void tlb_flush_one_mmuidx_locked(CPUArchState *env, int mmu_idx)
>  {
> -tlb_mmu_resize_locked(_tlb(env)->d[mmu_idx], 
> _tlb(env)->f[mmu_idx]);
> -env_tlb(env)->d[mmu_idx].n_used_entries = 0;
> -env_tlb(env)->d[mmu_idx].large_page_addr = -1;
> -env_tlb(env)->d[mmu_idx].large_page_mask = -1;
> -env_tlb(env)->d[mmu_idx].vindex = 0;
> -memset(env_tlb(env)->f[mmu_idx].table, -1,
> -   sizeof_tlb(_tlb(env)->f[mmu_idx]));
> -memset(env_tlb(env)->d[mmu_idx].vtable, -1,
> -   sizeof(env_tlb(env)->d[0].vtable));
> +CPUTLBDesc *desc = _tlb(env)->d[mmu_idx];
> +CPUTLBDescFast *fast = _tlb(env)->f[mmu_idx];
> +
> +tlb_mmu_resize_locked(desc, fast);
> +desc->n_used_entries = 0;
> +desc->large_page_addr = -1;
> +desc->large_page_mask = -1;
> +desc->vindex = 0;
> +memset(fast->table, -1, sizeof_tlb(fast));
> +memset(desc->vtable, -1, sizeof(desc->vtable));
>  }
>
>  static inline void tlb_n_used_entries_inc(CPUArchState *env, uintptr_t 
> mmu_idx)
> --
> 2.20.1
>
>



Re: [PATCH 5/9] cputlb: Hoist tlb portions in tlb_flush_one_mmuidx_locked

2020-01-20 Thread Alex Bennée


Richard Henderson  writes:

> No functional change, but the smaller expressions make
> the code easier to read.
>
> Signed-off-by: Richard Henderson 

Reviewed-by: Alex Bennée 

> ---
>  accel/tcg/cputlb.c | 19 ++-
>  1 file changed, 10 insertions(+), 9 deletions(-)
>
> diff --git a/accel/tcg/cputlb.c b/accel/tcg/cputlb.c
> index c7dc1dc85a..eff427f137 100644
> --- a/accel/tcg/cputlb.c
> +++ b/accel/tcg/cputlb.c
> @@ -230,15 +230,16 @@ static void tlb_mmu_resize_locked(CPUTLBDesc *desc, 
> CPUTLBDescFast *fast)
>  
>  static void tlb_flush_one_mmuidx_locked(CPUArchState *env, int mmu_idx)
>  {
> -tlb_mmu_resize_locked(_tlb(env)->d[mmu_idx], 
> _tlb(env)->f[mmu_idx]);
> -env_tlb(env)->d[mmu_idx].n_used_entries = 0;
> -env_tlb(env)->d[mmu_idx].large_page_addr = -1;
> -env_tlb(env)->d[mmu_idx].large_page_mask = -1;
> -env_tlb(env)->d[mmu_idx].vindex = 0;
> -memset(env_tlb(env)->f[mmu_idx].table, -1,
> -   sizeof_tlb(_tlb(env)->f[mmu_idx]));
> -memset(env_tlb(env)->d[mmu_idx].vtable, -1,
> -   sizeof(env_tlb(env)->d[0].vtable));
> +CPUTLBDesc *desc = _tlb(env)->d[mmu_idx];
> +CPUTLBDescFast *fast = _tlb(env)->f[mmu_idx];
> +
> +tlb_mmu_resize_locked(desc, fast);
> +desc->n_used_entries = 0;
> +desc->large_page_addr = -1;
> +desc->large_page_mask = -1;
> +desc->vindex = 0;
> +memset(fast->table, -1, sizeof_tlb(fast));
> +memset(desc->vtable, -1, sizeof(desc->vtable));
>  }
>  
>  static inline void tlb_n_used_entries_inc(CPUArchState *env, uintptr_t 
> mmu_idx)


-- 
Alex Bennée



Re: [PATCH 5/9] cputlb: Hoist tlb portions in tlb_flush_one_mmuidx_locked

2020-01-20 Thread Philippe Mathieu-Daudé

On 1/9/20 3:49 AM, Richard Henderson wrote:

No functional change, but the smaller expressions make
the code easier to read.

Signed-off-by: Richard Henderson 


Reviewed-by: Philippe Mathieu-Daudé 


---
  accel/tcg/cputlb.c | 19 ++-
  1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/accel/tcg/cputlb.c b/accel/tcg/cputlb.c
index c7dc1dc85a..eff427f137 100644
--- a/accel/tcg/cputlb.c
+++ b/accel/tcg/cputlb.c
@@ -230,15 +230,16 @@ static void tlb_mmu_resize_locked(CPUTLBDesc *desc, 
CPUTLBDescFast *fast)
  
  static void tlb_flush_one_mmuidx_locked(CPUArchState *env, int mmu_idx)

  {
-tlb_mmu_resize_locked(_tlb(env)->d[mmu_idx], 
_tlb(env)->f[mmu_idx]);
-env_tlb(env)->d[mmu_idx].n_used_entries = 0;
-env_tlb(env)->d[mmu_idx].large_page_addr = -1;
-env_tlb(env)->d[mmu_idx].large_page_mask = -1;
-env_tlb(env)->d[mmu_idx].vindex = 0;
-memset(env_tlb(env)->f[mmu_idx].table, -1,
-   sizeof_tlb(_tlb(env)->f[mmu_idx]));
-memset(env_tlb(env)->d[mmu_idx].vtable, -1,
-   sizeof(env_tlb(env)->d[0].vtable));
+CPUTLBDesc *desc = _tlb(env)->d[mmu_idx];
+CPUTLBDescFast *fast = _tlb(env)->f[mmu_idx];
+
+tlb_mmu_resize_locked(desc, fast);
+desc->n_used_entries = 0;
+desc->large_page_addr = -1;
+desc->large_page_mask = -1;
+desc->vindex = 0;
+memset(fast->table, -1, sizeof_tlb(fast));
+memset(desc->vtable, -1, sizeof(desc->vtable));
  }
  
  static inline void tlb_n_used_entries_inc(CPUArchState *env, uintptr_t mmu_idx)







[PATCH 5/9] cputlb: Hoist tlb portions in tlb_flush_one_mmuidx_locked

2020-01-08 Thread Richard Henderson
No functional change, but the smaller expressions make
the code easier to read.

Signed-off-by: Richard Henderson 
---
 accel/tcg/cputlb.c | 19 ++-
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/accel/tcg/cputlb.c b/accel/tcg/cputlb.c
index c7dc1dc85a..eff427f137 100644
--- a/accel/tcg/cputlb.c
+++ b/accel/tcg/cputlb.c
@@ -230,15 +230,16 @@ static void tlb_mmu_resize_locked(CPUTLBDesc *desc, 
CPUTLBDescFast *fast)
 
 static void tlb_flush_one_mmuidx_locked(CPUArchState *env, int mmu_idx)
 {
-tlb_mmu_resize_locked(_tlb(env)->d[mmu_idx], 
_tlb(env)->f[mmu_idx]);
-env_tlb(env)->d[mmu_idx].n_used_entries = 0;
-env_tlb(env)->d[mmu_idx].large_page_addr = -1;
-env_tlb(env)->d[mmu_idx].large_page_mask = -1;
-env_tlb(env)->d[mmu_idx].vindex = 0;
-memset(env_tlb(env)->f[mmu_idx].table, -1,
-   sizeof_tlb(_tlb(env)->f[mmu_idx]));
-memset(env_tlb(env)->d[mmu_idx].vtable, -1,
-   sizeof(env_tlb(env)->d[0].vtable));
+CPUTLBDesc *desc = _tlb(env)->d[mmu_idx];
+CPUTLBDescFast *fast = _tlb(env)->f[mmu_idx];
+
+tlb_mmu_resize_locked(desc, fast);
+desc->n_used_entries = 0;
+desc->large_page_addr = -1;
+desc->large_page_mask = -1;
+desc->vindex = 0;
+memset(fast->table, -1, sizeof_tlb(fast));
+memset(desc->vtable, -1, sizeof(desc->vtable));
 }
 
 static inline void tlb_n_used_entries_inc(CPUArchState *env, uintptr_t mmu_idx)
-- 
2.20.1