Hi Alexandre:

We've added a new configure option to allow you to override that
without changing source code.

For example:
--with-multilib-generator="rv32i-ilp32--c;rv32im-ilp32--c;rv32iac-ilp32--;rv32imac-ilp32--;rv32imafc-ilp32f-rv32imafdc-;rv64im-lp64--;rv64imc-lp64--;rv64imfc-lp64f--;rv64imac-lp64--;rv64imafdc-lp64d--"

Doc:
https://gcc.gnu.org/install/configure.html

GCC Changes:
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=c1e6691245ca2f1f329549f323f67afe32bcb97a

On Tue, Feb 23, 2021 at 4:01 PM Alexandre Oliva <ol...@adacore.com> wrote:
>
>
> We've had customer demand for these multilibs.  We'd be happy to
> maintain this change locally, but I thought I'd contribute the patch,
> just in case there's wider interest in them.  WDYT?
>
>
> for  gcc/ChangeLog
>
>         * config/riscv/t-elf-multilib: Add multilibs for rv64im,
>         rv64imc, and rv64imfc/lp64f.
> ---
>  gcc/config/riscv/t-elf-multilib |   11 +++++++++--
>  1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/gcc/config/riscv/t-elf-multilib b/gcc/config/riscv/t-elf-multilib
> index 19f9434616c2d..b268e26c954c8 100644
> --- a/gcc/config/riscv/t-elf-multilib
> +++ b/gcc/config/riscv/t-elf-multilib
> @@ -1,6 +1,6 @@
>  # This file was generated by multilib-generator with the command:
> -#  ./multilib-generator rv32i-ilp32--c rv32im-ilp32--c rv32iac-ilp32-- 
> rv32imac-ilp32-- rv32imafc-ilp32f-rv32imafdc- rv64imac-lp64-- 
> rv64imafdc-lp64d--
> -MULTILIB_OPTIONS = 
> march=rv32i/march=rv32ic/march=rv32im/march=rv32imc/march=rv32iac/march=rv32imac/march=rv32imafc/march=rv32imafdc/march=rv32gc/march=rv64imac/march=rv64imafdc/march=rv64gc
>  mabi=ilp32/mabi=ilp32f/mabi=lp64/mabi=lp64d
> +#  ./multilib-generator rv32i-ilp32--c rv32im-ilp32--c rv32iac-ilp32-- 
> rv32imac-ilp32-- rv32imafc-ilp32f-rv32imafdc- rv64im-lp64-- rv64imc-lp64-- 
> rv64imfc-lp64f-- rv64imac-lp64-- rv64imafdc-lp64d--
> +MULTILIB_OPTIONS = 
> march=rv32i/march=rv32ic/march=rv32im/march=rv32imc/march=rv32iac/march=rv32imac/march=rv32imafc/march=rv32imafdc/march=rv32gc/march=rv64im/march=rv64imc/march=rv64imfc/march=rv64imac/march=rv64imafdc/march=rv64gc
>  mabi=ilp32/mabi=ilp32f/mabi=lp64/mabi=lp64f/mabi=lp64d
>  MULTILIB_DIRNAMES = rv32i \
>  rv32ic \
>  rv32im \
> @@ -10,17 +10,24 @@ rv32imac \
>  rv32imafc \
>  rv32imafdc \
>  rv32gc \
> +rv64im \
> +rv64imc \
> +rv64imfc \
>  rv64imac \
>  rv64imafdc \
>  rv64gc ilp32 \
>  ilp32f \
>  lp64 \
> +lp64f \
>  lp64d
>  MULTILIB_REQUIRED = march=rv32i/mabi=ilp32 \
>  march=rv32im/mabi=ilp32 \
>  march=rv32iac/mabi=ilp32 \
>  march=rv32imac/mabi=ilp32 \
>  march=rv32imafc/mabi=ilp32f \
> +march=rv64im/mabi=lp64 \
> +march=rv64imc/mabi=lp64 \
> +march=rv64imfc/mabi=lp64f \
>  march=rv64imac/mabi=lp64 \
>  march=rv64imafdc/mabi=lp64d
>  MULTILIB_REUSE = march.rv32i/mabi.ilp32=march.rv32ic/mabi.ilp32 \
>
>
> --
> Alexandre Oliva, happy hacker  https://FSFLA.org/blogs/lxo/
>    Free Software Activist         GNU Toolchain Engineer
>         Vim, Vi, Voltei pro Emacs -- GNUlius Caesar

Reply via email to