RISC-V: Fix bug of TARGET_COMPUTE_MULTILIB implemented in riscv.
authorJin Ma <jinma@linux.alibaba.com>
Thu, 2 Feb 2023 11:46:04 +0000 (19:46 +0800)
committerKito Cheng <kito.cheng@sifive.com>
Thu, 2 Feb 2023 13:32:19 +0000 (21:32 +0800)
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 (riscv_compute_multilib):
Fix finding best match score.

gcc/common/config/riscv/riscv-common.cc

index 616e2f8..7876740 100644 (file)
@@ -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)