Re: [PATCH] RISC-V: Fix bug of TARGET_COMPUTE_MULTILIB implemented in riscv.

2023-02-02 Thread Kito Cheng
Good catch! thanks for fixing that, committed to trunk :)

On Thu, Feb 2, 2023 at 7:46 PM Jin Ma  wrote:
>
> MAX_MATCH_SCORE is not assigned anywhere except initialized to 0,
> causing BEST_MATCH_MULTI_LIB to always be 0 or -1, which will
> cause the result of TARGET_COMPUTE_MULTILIB hook to fail.
>
> gcc/ChangeLog:
>
> * common/config/riscv/riscv-common.cc:
> ---
>  gcc/common/config/riscv/riscv-common.cc | 5 -
>  1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/gcc/common/config/riscv/riscv-common.cc 
> b/gcc/common/config/riscv/riscv-common.cc
> index 616e2f897b9..787674003cb 100644
> --- a/gcc/common/config/riscv/riscv-common.cc
> +++ b/gcc/common/config/riscv/riscv-common.cc
> @@ -1700,7 +1700,10 @@ riscv_compute_multilib (
>
>/* Record highest match score multi-lib setting.  */
>if (match_score > max_match_score)
> -   best_match_multi_lib = i;
> +   {
> + best_match_multi_lib = i;
> + max_match_score = match_score;
> +   }
>  }
>
>if (best_match_multi_lib == -1)
> --
> 2.17.1
>


[PATCH] RISC-V: Fix bug of TARGET_COMPUTE_MULTILIB implemented in riscv.

2023-02-02 Thread Jin Ma via Gcc-patches
MAX_MATCH_SCORE is not assigned anywhere except initialized to 0,
causing BEST_MATCH_MULTI_LIB to always be 0 or -1, which will
cause the result of TARGET_COMPUTE_MULTILIB hook to fail.

gcc/ChangeLog:

* common/config/riscv/riscv-common.cc:
---
 gcc/common/config/riscv/riscv-common.cc | 5 -
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/gcc/common/config/riscv/riscv-common.cc 
b/gcc/common/config/riscv/riscv-common.cc
index 616e2f897b9..787674003cb 100644
--- a/gcc/common/config/riscv/riscv-common.cc
+++ b/gcc/common/config/riscv/riscv-common.cc
@@ -1700,7 +1700,10 @@ riscv_compute_multilib (
 
   /* Record highest match score multi-lib setting.  */
   if (match_score > max_match_score)
-   best_match_multi_lib = i;
+   {
+ best_match_multi_lib = i;
+ max_match_score = match_score;
+   }
 }
 
   if (best_match_multi_lib == -1)
-- 
2.17.1