Module Name: src Committed By: mrg Date: Thu Apr 18 10:07:24 UTC 2019
Modified Files: src/external/gpl3/binutils/dist/ld: configure.tgt src/external/gpl3/binutils/dist/ld/emulparams: elf32lriscv.sh elf32lriscv_ilp32.sh elf32lriscv_ilp32f.sh src/external/gpl3/binutils/usr.bin/ld: Makefile src/external/gpl3/binutils/usr.bin/ld/arch/riscv64: defs.mk ldemul-list.h Log Message: - use the same set of emulations for riscv* on netbsd as linux does - for riscv64-*netbsd* hosts and 32 bit target, set LIB_PATH - build the other target emulations for riscv32 on riscv64 - regen riscv64 mknative for ld updates To generate a diff of this commit: cvs rdiff -u -r1.31 -r1.32 src/external/gpl3/binutils/dist/ld/configure.tgt cvs rdiff -u -r1.4 -r1.5 \ src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv.sh cvs rdiff -u -r1.1.1.1 -r1.2 \ src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32.sh \ src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32f.sh cvs rdiff -u -r1.30 -r1.31 src/external/gpl3/binutils/usr.bin/ld/Makefile cvs rdiff -u -r1.3 -r1.4 \ src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/defs.mk cvs rdiff -u -r1.1 -r1.2 \ src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/ldemul-list.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/external/gpl3/binutils/dist/ld/configure.tgt diff -u src/external/gpl3/binutils/dist/ld/configure.tgt:1.31 src/external/gpl3/binutils/dist/ld/configure.tgt:1.32 --- src/external/gpl3/binutils/dist/ld/configure.tgt:1.31 Fri Dec 28 20:43:25 2018 +++ src/external/gpl3/binutils/dist/ld/configure.tgt Thu Apr 18 10:07:24 2019 @@ -669,14 +669,16 @@ powerpc-*-beos*) targ_emul=aixppc ;; powerpc-*-windiss*) targ_emul=elf32ppcwindiss ;; powerpc-*-lynxos*) targ_emul=ppclynx ;; pru*-*-*) targ_emul=pruelf ;; -riscv32*-*-linux*) targ_emul=elf32lriscv +riscv32*-*-linux* | riscv-*-netbsd* | riscv32*-*-netbsd*) + targ_emul=elf32lriscv targ_extra_emuls="elf32lriscv_ilp32f elf32lriscv_ilp32 elf64lriscv elf64lriscv_lp64f elf64lriscv_lp64" targ_extra_libpath=$targ_extra_emuls ;; riscv-*-* | riscv32*-*-*) targ_emul=elf32lriscv targ_extra_emuls="elf64lriscv" targ_extra_libpath=$targ_extra_emuls ;; -riscv64*-*-linux*) targ_emul=elf64lriscv +riscv64*-*-linux* | riscv64*-*-netbsd*) + targ_emul=elf64lriscv targ_extra_emuls="elf64lriscv_lp64f elf64lriscv_lp64 elf32lriscv elf32lriscv_ilp32f elf32lriscv_ilp32" targ_extra_libpath=$targ_extra_emuls ;; riscv64*-*-*) targ_emul=elf64lriscv Index: src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv.sh diff -u src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv.sh:1.4 src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv.sh:1.5 --- src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv.sh:1.4 Wed Nov 7 01:13:55 2018 +++ src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv.sh Thu Apr 18 10:07:24 2019 @@ -12,4 +12,13 @@ case "$target" in LIBPATH_SUFFIX="/ilp32d" ;; esac ;; + # NetBSD puts IPL32 libraries in rv32 subdirectory. + # XXX d vs f vs "" + riscv64-*-netbsd*) + case "$EMULATION_NAME" in + *32*) + LIB_PATH='=/usr/lib/rv32' + ;; + esac + ;; esac Index: src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32.sh diff -u src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32.sh:1.1.1.1 src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32.sh:1.2 --- src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32.sh:1.1.1.1 Tue Nov 6 21:19:03 2018 +++ src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32.sh Thu Apr 18 10:07:24 2019 @@ -11,4 +11,13 @@ case "$target" in LIBPATH_SUFFIX="/ilp32" ;; esac ;; + # NetBSD puts IPL32 libraries in rv32 subdirectory. + # XXX d vs f vs "" + riscv64-*-netbsd*) + case "$EMULATION_NAME" in + *32*) + LIB_PATH='=/usr/lib/rv32' + ;; + esac + ;; esac Index: src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32f.sh diff -u src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32f.sh:1.1.1.1 src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32f.sh:1.2 --- src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32f.sh:1.1.1.1 Tue Nov 6 21:19:03 2018 +++ src/external/gpl3/binutils/dist/ld/emulparams/elf32lriscv_ilp32f.sh Thu Apr 18 10:07:24 2019 @@ -11,4 +11,13 @@ case "$target" in LIBPATH_SUFFIX="/ilp32f" ;; esac ;; + # NetBSD puts IPL32 libraries in rv32 subdirectory. + # XXX d vs f vs "" + riscv64-*-netbsd*) + case "$EMULATION_NAME" in + *32*) + LIB_PATH='=/usr/lib/rv32' + ;; + esac + ;; esac Index: src/external/gpl3/binutils/usr.bin/ld/Makefile diff -u src/external/gpl3/binutils/usr.bin/ld/Makefile:1.30 src/external/gpl3/binutils/usr.bin/ld/Makefile:1.31 --- src/external/gpl3/binutils/usr.bin/ld/Makefile:1.30 Mon Feb 25 19:55:35 2019 +++ src/external/gpl3/binutils/usr.bin/ld/Makefile Thu Apr 18 10:07:24 2019 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.30 2019/02/25 19:55:35 joerg Exp $ +# $NetBSD: Makefile,v 1.31 2019/04/18 10:07:24 mrg Exp $ CPPFLAGS+= -I${.CURDIR}/arch/${BINUTILS_MACHINE_ARCH} \ -I${DIST}/ld \ @@ -74,6 +74,7 @@ e${f}.c: ${DIST}/ld/genscripts.sh ${.CUR . if ${BINUTILS_MACHINE_ARCH} == "x86_64" || \ ${BINUTILS_MACHINE_ARCH} == "sparc64" || \ + ${BINUTILS_MACHINE_ARCH} == "riscv64" || \ !empty(BINUTILS_MACHINE_ARCH:Maarch64*) || \ !empty(BINUTILS_MACHINE_ARCH:Mearm*) || \ !empty(BINUTILS_MACHINE_ARCH:Marm*) || \ Index: src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/defs.mk diff -u src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/defs.mk:1.3 src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/defs.mk:1.4 --- src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/defs.mk:1.3 Tue Apr 16 06:19:54 2019 +++ src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/defs.mk Thu Apr 18 10:07:24 2019 @@ -4,9 +4,9 @@ # G_DEFS=-DHAVE_CONFIG_H G_EMUL=elf64lriscv -G_EMULATION_OFILES=eelf64lriscv.o eelf32lriscv.o +G_EMULATION_OFILES=eelf64lriscv.o eelf64lriscv_lp64f.o eelf64lriscv_lp64.o eelf32lriscv.o eelf32lriscv_ilp32f.o eelf32lriscv_ilp32.o G_INCLUDES= -G_OFILES=ldgram.o ldlex-wrapper.o lexsup.o ldlang.o mri.o ldctor.o ldmain.o plugin.o ldwrite.o ldexp.o ldemul.o ldver.o ldmisc.o ldfile.o ldcref.o eelf64lriscv.o eelf32lriscv.o ldbuildid.o +G_OFILES=ldgram.o ldlex-wrapper.o lexsup.o ldlang.o mri.o ldctor.o ldmain.o plugin.o ldwrite.o ldexp.o ldemul.o ldver.o ldmisc.o ldfile.o ldcref.o eelf64lriscv.o eelf64lriscv_lp64f.o eelf64lriscv_lp64.o eelf32lriscv.o eelf32lriscv_ilp32f.o eelf32lriscv_ilp32.o ldbuildid.o G_STRINGIFY=astring.sed G_TEXINFOS=ld.texi G_target_alias=riscv64--netbsd Index: src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/ldemul-list.h diff -u src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/ldemul-list.h:1.1 src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/ldemul-list.h:1.2 --- src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/ldemul-list.h:1.1 Fri Sep 19 17:22:22 2014 +++ src/external/gpl3/binutils/usr.bin/ld/arch/riscv64/ldemul-list.h Thu Apr 18 10:07:24 2019 @@ -1,12 +1,20 @@ /* This file is automatically generated. DO NOT EDIT! */ -/* Generated from: NetBSD: mknative-binutils,v 1.9 2013/10/01 15:41:17 skrll Exp */ -/* Generated from: NetBSD: mknative.common,v 1.11 2014/02/17 21:39:43 christos Exp */ +/* Generated from: NetBSD: mknative-binutils,v 1.11 2018/11/08 02:08:35 christos Exp */ +/* Generated from: NetBSD: mknative.common,v 1.16 2018/04/15 15:13:37 christos Exp */ /* This file is automatically generated. DO NOT EDIT! */ extern ld_emulation_xfer_type ld_elf64lriscv_emulation; +extern ld_emulation_xfer_type ld_elf64lriscv_lp64f_emulation; +extern ld_emulation_xfer_type ld_elf64lriscv_lp64_emulation; extern ld_emulation_xfer_type ld_elf32lriscv_emulation; +extern ld_emulation_xfer_type ld_elf32lriscv_ilp32f_emulation; +extern ld_emulation_xfer_type ld_elf32lriscv_ilp32_emulation; #define EMULATION_LIST \ &ld_elf64lriscv_emulation, \ + &ld_elf64lriscv_lp64f_emulation, \ + &ld_elf64lriscv_lp64_emulation, \ &ld_elf32lriscv_emulation, \ + &ld_elf32lriscv_ilp32f_emulation, \ + &ld_elf32lriscv_ilp32_emulation, \ 0