On Wed, Aug 27, 2025 at 4:07 AM Richard Henderson
<richard.hender...@linaro.org> wrote:
>
> We will use this function beyond kvm.c.
>
> Signed-off-by: Richard Henderson <richard.hender...@linaro.org>
> ---

Reviewed-by: Manos Pitsidianakis <manos.pitsidiana...@linaro.org>

>  target/arm/internals.h |  3 +++
>  target/arm/helper.c    | 11 +++++++++++
>  target/arm/kvm.c       | 11 -----------
>  3 files changed, 14 insertions(+), 11 deletions(-)
>
> diff --git a/target/arm/internals.h b/target/arm/internals.h
> index 1b3d0244fd..08e2acdb99 100644
> --- a/target/arm/internals.h
> +++ b/target/arm/internals.h
> @@ -1981,4 +1981,7 @@ void vfp_clear_float_status_exc_flags(CPUARMState *env);
>  void vfp_set_fpcr_to_host(CPUARMState *env, uint32_t val, uint32_t mask);
>  bool arm_pan_enabled(CPUARMState *env);
>
> +/* Compare uint64_t for qsort and bsearch. */
> +int compare_u64(const void *a, const void *b);
> +
>  #endif
> diff --git a/target/arm/helper.c b/target/arm/helper.c
> index 0c1299ff84..d230f9e766 100644
> --- a/target/arm/helper.c
> +++ b/target/arm/helper.c
> @@ -40,6 +40,17 @@
>
>  static void switch_mode(CPUARMState *env, int mode);
>
> +int compare_u64(const void *a, const void *b)
> +{
> +    if (*(uint64_t *)a > *(uint64_t *)b) {
> +        return 1;
> +    }
> +    if (*(uint64_t *)a < *(uint64_t *)b) {
> +        return -1;
> +    }
> +    return 0;
> +}
> +
>  uint64_t raw_read(CPUARMState *env, const ARMCPRegInfo *ri)
>  {
>      assert(ri->fieldoffset);
> diff --git a/target/arm/kvm.c b/target/arm/kvm.c
> index 6672344855..9e569eff65 100644
> --- a/target/arm/kvm.c
> +++ b/target/arm/kvm.c
> @@ -718,17 +718,6 @@ void kvm_arm_register_device(MemoryRegion *mr, uint64_t 
> devid, uint64_t group,
>      memory_region_ref(kd->mr);
>  }
>
> -static int compare_u64(const void *a, const void *b)
> -{
> -    if (*(uint64_t *)a > *(uint64_t *)b) {
> -        return 1;
> -    }
> -    if (*(uint64_t *)a < *(uint64_t *)b) {
> -        return -1;
> -    }
> -    return 0;
> -}
> -
>  /*
>   * cpreg_values are sorted in ascending order by KVM register ID
>   * (see kvm_arm_init_cpreg_list). This allows us to cheaply find
> --
> 2.43.0
>
>

Reply via email to