RISC-V: Lookup reversely in riscv_select_multilib_by_abi
When use --print-multi-os-dir or -print-multi-directory, gcc outputs different values with full -march option and the base one only. $ ./gcc/xgcc --print-multi-os-dir -mabi=lp64d -march=rv64gc lib64/lp64d $ ./gcc/xgcc --print-multi-os-dir -mabi=lp64d -march=rv64gc_zba . The reason is that in multilib.h, the fallback value of multilib is listed as the 1st one in `multilib_raw[]`. gcc * common/config/riscv/riscv-common.cc(riscv_select_multilib_by_abi): look up reversely as the fallback path is listed as the 1st one.
This commit is contained in:
parent
811204f52a
commit
3162abfb50
1 changed files with 1 additions and 1 deletions
|
@ -2079,7 +2079,7 @@ riscv_select_multilib_by_abi (
|
|||
const std::string &riscv_current_abi_str,
|
||||
const std::vector<riscv_multi_lib_info_t> &multilib_infos)
|
||||
{
|
||||
for (size_t i = 0; i < multilib_infos.size (); ++i)
|
||||
for (ssize_t i = multilib_infos.size (); i >= 0; --i)
|
||||
if (riscv_current_abi_str == multilib_infos[i].abi_str)
|
||||
return xstrdup (multilib_infos[i].path.c_str ());
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue