Date: Mon, 21 Aug 2017 11:56:48 +0000 (UTC) From: Hans Petter Selasky <hselasky@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r322747 - in projects/bsd_rdma_4_9: . bin/cat bin/chmod bin/date bin/dd bin/echo bin/expr bin/ln bin/ls bin/mv bin/pax bin/pkill bin/pwait bin/sh bin/sh/tests bin/sh/tests/invocation bi... Message-ID: <201708211156.v7LBumFp078895@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: hselasky Date: Mon Aug 21 11:56:47 2017 New Revision: 322747 URL: https://svnweb.freebsd.org/changeset/base/322747 Log: Merge ^/head r322398 through r322746. Added: projects/bsd_rdma_4_9/bin/sh/tests/invocation/ - copied from r322746, head/bin/sh/tests/invocation/ projects/bsd_rdma_4_9/contrib/gcc/config/riscv/ - copied from r322746, head/contrib/gcc/config/riscv/ projects/bsd_rdma_4_9/lib/libcasper/services/tests/ - copied from r322746, head/lib/libcasper/services/tests/ projects/bsd_rdma_4_9/lib/libcasper/tests/ - copied from r322746, head/lib/libcasper/tests/ projects/bsd_rdma_4_9/share/man/man4/wmt.4 - copied unchanged from r322746, head/share/man/man4/wmt.4 projects/bsd_rdma_4_9/sys/amd64/include/sgx.h - copied unchanged from r322746, head/sys/amd64/include/sgx.h projects/bsd_rdma_4_9/sys/amd64/include/sgxreg.h - copied unchanged from r322746, head/sys/amd64/include/sgxreg.h projects/bsd_rdma_4_9/sys/amd64/sgx/ - copied from r322746, head/sys/amd64/sgx/ projects/bsd_rdma_4_9/sys/compat/linuxkpi/common/include/asm/msr.h - copied unchanged from r322746, head/sys/compat/linuxkpi/common/include/asm/msr.h projects/bsd_rdma_4_9/sys/compat/linuxkpi/common/include/linux/atomic.h - copied unchanged from r322746, head/sys/compat/linuxkpi/common/include/linux/atomic.h projects/bsd_rdma_4_9/sys/dev/iicbus/ds13rtc.c - copied unchanged from r322746, head/sys/dev/iicbus/ds13rtc.c projects/bsd_rdma_4_9/sys/dev/usb/input/wmt.c - copied unchanged from r322746, head/sys/dev/usb/input/wmt.c projects/bsd_rdma_4_9/sys/modules/i2c/ds13rtc/ - copied from r322746, head/sys/modules/i2c/ds13rtc/ projects/bsd_rdma_4_9/sys/modules/i2c/s35390a/ - copied from r322746, head/sys/modules/i2c/s35390a/ projects/bsd_rdma_4_9/sys/modules/sgx/ - copied from r322746, head/sys/modules/sgx/ projects/bsd_rdma_4_9/sys/modules/sgx_linux/ - copied from r322746, head/sys/modules/sgx_linux/ projects/bsd_rdma_4_9/sys/modules/usb/wmt/ - copied from r322746, head/sys/modules/usb/wmt/ projects/bsd_rdma_4_9/tests/Makefile.inc0 - copied unchanged from r322746, head/tests/Makefile.inc0 projects/bsd_rdma_4_9/tests/etc/Makefile.inc - copied unchanged from r322746, head/tests/etc/Makefile.inc projects/bsd_rdma_4_9/tests/sys/geom/class/Makefile.inc - copied unchanged from r322746, head/tests/sys/geom/class/Makefile.inc projects/bsd_rdma_4_9/tests/sys/pjdfstest/Makefile.inc - copied unchanged from r322746, head/tests/sys/pjdfstest/Makefile.inc projects/bsd_rdma_4_9/tests/sys/pjdfstest/tests/Makefile.inc - copied unchanged from r322746, head/tests/sys/pjdfstest/tests/Makefile.inc projects/bsd_rdma_4_9/tools/build/options/WITHOUT_MAKE_CHECK_USE_SANDBOX - copied unchanged from r322746, head/tools/build/options/WITHOUT_MAKE_CHECK_USE_SANDBOX Deleted: projects/bsd_rdma_4_9/contrib/gcc/config/riscv64/ projects/bsd_rdma_4_9/contrib/zstd/examples/ projects/bsd_rdma_4_9/sys/dev/iicbus/ds133x.c projects/bsd_rdma_4_9/sys/dev/iicbus/ds1374.c Modified: projects/bsd_rdma_4_9/Makefile projects/bsd_rdma_4_9/Makefile.inc1 projects/bsd_rdma_4_9/Makefile.libcompat projects/bsd_rdma_4_9/UPDATING projects/bsd_rdma_4_9/bin/cat/Makefile projects/bsd_rdma_4_9/bin/chmod/Makefile projects/bsd_rdma_4_9/bin/date/Makefile projects/bsd_rdma_4_9/bin/dd/Makefile projects/bsd_rdma_4_9/bin/echo/Makefile projects/bsd_rdma_4_9/bin/expr/Makefile projects/bsd_rdma_4_9/bin/ln/Makefile projects/bsd_rdma_4_9/bin/ls/Makefile projects/bsd_rdma_4_9/bin/mv/Makefile projects/bsd_rdma_4_9/bin/pax/Makefile projects/bsd_rdma_4_9/bin/pkill/Makefile projects/bsd_rdma_4_9/bin/pkill/pkill.c projects/bsd_rdma_4_9/bin/pwait/Makefile projects/bsd_rdma_4_9/bin/sh/Makefile projects/bsd_rdma_4_9/bin/sh/tests/Makefile projects/bsd_rdma_4_9/bin/sleep/Makefile projects/bsd_rdma_4_9/bin/test/Makefile projects/bsd_rdma_4_9/contrib/binutils/bfd/ecoff.c projects/bsd_rdma_4_9/contrib/binutils/gas/config/tc-mips.c projects/bsd_rdma_4_9/contrib/libc++/include/string projects/bsd_rdma_4_9/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h projects/bsd_rdma_4_9/contrib/llvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h projects/bsd_rdma_4_9/contrib/llvm/include/llvm/Object/COFFImportFile.h projects/bsd_rdma_4_9/contrib/llvm/lib/Analysis/ScalarEvolution.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/Analysis/ValueTracking.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/VirtRegMap.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/Object/COFFImportFile.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td projects/bsd_rdma_4_9/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/Target/X86/X86InstrAVX512.td projects/bsd_rdma_4_9/contrib/llvm/lib/ToolDrivers/llvm-dlltool/DlltoolDriver.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp projects/bsd_rdma_4_9/contrib/llvm/lib/Transforms/Scalar/BDCE.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/include/clang-c/Index.h projects/bsd_rdma_4_9/contrib/llvm/tools/clang/include/clang/AST/Decl.h projects/bsd_rdma_4_9/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriverKinds.td projects/bsd_rdma_4_9/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticGroups.td projects/bsd_rdma_4_9/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLexKinds.td projects/bsd_rdma_4_9/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParseKinds.td projects/bsd_rdma_4_9/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td projects/bsd_rdma_4_9/contrib/llvm/tools/clang/include/clang/Driver/Options.td projects/bsd_rdma_4_9/contrib/llvm/tools/clang/include/clang/Driver/ToolChain.h projects/bsd_rdma_4_9/contrib/llvm/tools/clang/include/clang/Frontend/LangStandards.def projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/AST/DeclCXX.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/AST/ExprCXX.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Basic/Targets.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChain.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Mips.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/Clang.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/CrossWindows.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/CrossWindows.h projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/Darwin.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/Darwin.h projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/Gnu.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/Gnu.h projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVC.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVC.h projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/MinGW.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/MinGW.h projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Driver/ToolChains/NetBSD.h projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Frontend/InitPreprocessor.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Parse/ParseCXXInlineMethods.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Sema/SemaCast.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Sema/SemaCodeComplete.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/lld/COFF/Driver.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/lld/ELF/Driver.cpp projects/bsd_rdma_4_9/contrib/llvm/tools/lld/ELF/Options.td projects/bsd_rdma_4_9/contrib/llvm/tools/llvm-objdump/llvm-objdump.cpp projects/bsd_rdma_4_9/contrib/mdocml/lib.in projects/bsd_rdma_4_9/etc/mtree/BSD.tests.dist projects/bsd_rdma_4_9/etc/periodic/daily/200.backup-passwd projects/bsd_rdma_4_9/etc/periodic/daily/Makefile projects/bsd_rdma_4_9/etc/rc.d/Makefile projects/bsd_rdma_4_9/gnu/usr.bin/binutils/Makefile.inc0 projects/bsd_rdma_4_9/gnu/usr.bin/binutils/ld/Makefile.arm projects/bsd_rdma_4_9/gnu/usr.bin/binutils/libbfd/Makefile.arm projects/bsd_rdma_4_9/gnu/usr.bin/cc/Makefile.inc projects/bsd_rdma_4_9/gnu/usr.bin/cc/Makefile.tgt projects/bsd_rdma_4_9/gnu/usr.bin/gdb/Makefile.inc projects/bsd_rdma_4_9/gnu/usr.bin/gdb/libgdb/Makefile projects/bsd_rdma_4_9/lib/atf/libatf-c++/Makefile projects/bsd_rdma_4_9/lib/atf/libatf-c/Makefile projects/bsd_rdma_4_9/lib/clang/include/clang/Basic/Version.inc projects/bsd_rdma_4_9/lib/clang/include/lld/Config/Version.inc projects/bsd_rdma_4_9/lib/clang/include/llvm/Support/VCSRevision.h projects/bsd_rdma_4_9/lib/libarchive/Makefile projects/bsd_rdma_4_9/lib/libc/Makefile projects/bsd_rdma_4_9/lib/libc/i386/Makefile.inc projects/bsd_rdma_4_9/lib/libc/stdlib/set_constraint_handler_s.c projects/bsd_rdma_4_9/lib/libc/string/memset_s.c projects/bsd_rdma_4_9/lib/libc/sys/getsockopt.2 projects/bsd_rdma_4_9/lib/libc/sys/shmget.2 projects/bsd_rdma_4_9/lib/libc/tests/string/memset_s_test.c projects/bsd_rdma_4_9/lib/libc/x86/sys/__vdso_gettc.c projects/bsd_rdma_4_9/lib/libcam/Makefile projects/bsd_rdma_4_9/lib/libcasper/Makefile projects/bsd_rdma_4_9/lib/libcasper/services/Makefile projects/bsd_rdma_4_9/lib/libcasper/services/cap_dns/Makefile projects/bsd_rdma_4_9/lib/libcasper/services/cap_dns/tests/dns_test.c projects/bsd_rdma_4_9/lib/libcasper/services/cap_grp/Makefile projects/bsd_rdma_4_9/lib/libcasper/services/cap_grp/tests/grp_test.c projects/bsd_rdma_4_9/lib/libcasper/services/cap_pwd/Makefile projects/bsd_rdma_4_9/lib/libcasper/services/cap_pwd/tests/pwd_test.c projects/bsd_rdma_4_9/lib/libcasper/services/cap_sysctl/Makefile projects/bsd_rdma_4_9/lib/libcasper/services/cap_sysctl/tests/Makefile projects/bsd_rdma_4_9/lib/libcasper/services/cap_sysctl/tests/sysctl_test.c projects/bsd_rdma_4_9/lib/libcompiler_rt/Makefile.inc projects/bsd_rdma_4_9/lib/libcrypt/Makefile projects/bsd_rdma_4_9/lib/libfetch/common.c projects/bsd_rdma_4_9/lib/libkvm/Makefile projects/bsd_rdma_4_9/lib/libmp/Makefile projects/bsd_rdma_4_9/lib/libnv/Makefile projects/bsd_rdma_4_9/lib/libpathconv/Makefile projects/bsd_rdma_4_9/lib/libproc/Makefile projects/bsd_rdma_4_9/lib/librt/Makefile projects/bsd_rdma_4_9/lib/libsbuf/Makefile projects/bsd_rdma_4_9/lib/libthr/Makefile projects/bsd_rdma_4_9/lib/libutil/Makefile projects/bsd_rdma_4_9/lib/libutil/kinfo_getvmmap.3 projects/bsd_rdma_4_9/lib/libxo/Makefile projects/bsd_rdma_4_9/lib/msun/Makefile projects/bsd_rdma_4_9/lib/ncurses/ncurses/termcap.c projects/bsd_rdma_4_9/libexec/atf/atf-check/Makefile projects/bsd_rdma_4_9/libexec/atf/atf-sh/Makefile projects/bsd_rdma_4_9/libexec/rtld-elf/Makefile projects/bsd_rdma_4_9/release/packages/kernel.ucl projects/bsd_rdma_4_9/release/packages/runtime.ucl projects/bsd_rdma_4_9/release/release.sh projects/bsd_rdma_4_9/sbin/devd/Makefile projects/bsd_rdma_4_9/sbin/dhclient/Makefile projects/bsd_rdma_4_9/sbin/growfs/Makefile projects/bsd_rdma_4_9/sbin/ifconfig/Makefile projects/bsd_rdma_4_9/sbin/mdconfig/Makefile projects/bsd_rdma_4_9/sbin/pfctl/Makefile projects/bsd_rdma_4_9/sbin/route/route.8 projects/bsd_rdma_4_9/share/examples/Makefile projects/bsd_rdma_4_9/share/man/man4/Makefile projects/bsd_rdma_4_9/share/man/man4/bge.4 projects/bsd_rdma_4_9/share/man/man4/ena.4 projects/bsd_rdma_4_9/share/man/man4/pfsync.4 projects/bsd_rdma_4_9/share/man/man4/sa.4 projects/bsd_rdma_4_9/share/man/man4/usb_quirk.4 projects/bsd_rdma_4_9/share/man/man5/src.conf.5 projects/bsd_rdma_4_9/share/man/man9/Makefile projects/bsd_rdma_4_9/share/man/man9/config_intrhook.9 projects/bsd_rdma_4_9/share/man/man9/sbuf.9 projects/bsd_rdma_4_9/share/misc/bsd-family-tree projects/bsd_rdma_4_9/share/mk/bsd.README projects/bsd_rdma_4_9/share/mk/bsd.cpu.mk projects/bsd_rdma_4_9/share/mk/bsd.crunchgen.mk projects/bsd_rdma_4_9/share/mk/bsd.lib.mk projects/bsd_rdma_4_9/share/mk/bsd.links.mk projects/bsd_rdma_4_9/share/mk/bsd.opts.mk projects/bsd_rdma_4_9/share/mk/bsd.own.mk projects/bsd_rdma_4_9/share/mk/bsd.prog.mk projects/bsd_rdma_4_9/share/mk/src.opts.mk projects/bsd_rdma_4_9/share/mk/suite.test.mk projects/bsd_rdma_4_9/share/mk/sys.mk projects/bsd_rdma_4_9/share/zoneinfo/Makefile projects/bsd_rdma_4_9/sys/amd64/amd64/minidump_machdep.c projects/bsd_rdma_4_9/sys/amd64/amd64/trap.c projects/bsd_rdma_4_9/sys/amd64/include/cpufunc.h projects/bsd_rdma_4_9/sys/amd64/include/intr_machdep.h projects/bsd_rdma_4_9/sys/arm/arm/minidump_machdep.c projects/bsd_rdma_4_9/sys/arm/arm/sc_machdep.c projects/bsd_rdma_4_9/sys/arm/at91/at91_pmc.c projects/bsd_rdma_4_9/sys/arm/conf/GENERIC projects/bsd_rdma_4_9/sys/arm/conf/NOTES projects/bsd_rdma_4_9/sys/arm64/arm64/debug_monitor.c projects/bsd_rdma_4_9/sys/arm64/arm64/gic_v3.c projects/bsd_rdma_4_9/sys/arm64/arm64/gic_v3_fdt.c projects/bsd_rdma_4_9/sys/arm64/arm64/gicv3_its.c projects/bsd_rdma_4_9/sys/arm64/arm64/machdep.c projects/bsd_rdma_4_9/sys/arm64/arm64/minidump_machdep.c projects/bsd_rdma_4_9/sys/arm64/arm64/mp_machdep.c projects/bsd_rdma_4_9/sys/arm64/arm64/vfp.c projects/bsd_rdma_4_9/sys/arm64/include/machdep.h projects/bsd_rdma_4_9/sys/boot/common/part.c projects/bsd_rdma_4_9/sys/boot/efi/include/efi.h projects/bsd_rdma_4_9/sys/boot/efi/loader/arch/amd64/trap.c projects/bsd_rdma_4_9/sys/boot/fdt/dts/arm/bcm2835.dtsi projects/bsd_rdma_4_9/sys/boot/fdt/dts/arm/bcm2836.dtsi projects/bsd_rdma_4_9/sys/cam/cam_iosched.c projects/bsd_rdma_4_9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/abd.h projects/bsd_rdma_4_9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c projects/bsd_rdma_4_9/sys/compat/linuxkpi/common/include/linux/device.h projects/bsd_rdma_4_9/sys/compat/linuxkpi/common/include/linux/list.h projects/bsd_rdma_4_9/sys/compat/linuxkpi/common/src/linux_rcu.c projects/bsd_rdma_4_9/sys/compat/linuxkpi/common/src/linux_tasklet.c projects/bsd_rdma_4_9/sys/compat/linuxkpi/common/src/linux_work.c projects/bsd_rdma_4_9/sys/conf/NOTES projects/bsd_rdma_4_9/sys/conf/files projects/bsd_rdma_4_9/sys/conf/files.arm64 projects/bsd_rdma_4_9/sys/conf/kern.post.mk projects/bsd_rdma_4_9/sys/crypto/aesni/aesni_ghash.c projects/bsd_rdma_4_9/sys/crypto/aesni/aesni_wrap.c projects/bsd_rdma_4_9/sys/ddb/db_textdump.c projects/bsd_rdma_4_9/sys/dev/cxgbe/adapter.h projects/bsd_rdma_4_9/sys/dev/cxgbe/common/t4_hw.c projects/bsd_rdma_4_9/sys/dev/cxgbe/t4_main.c projects/bsd_rdma_4_9/sys/dev/cxgbe/tom/t4_listen.c projects/bsd_rdma_4_9/sys/dev/extres/hwreset/hwreset.h projects/bsd_rdma_4_9/sys/dev/hyperv/include/hyperv.h projects/bsd_rdma_4_9/sys/dev/hyperv/netvsc/hn_nvs.c projects/bsd_rdma_4_9/sys/dev/hyperv/netvsc/hn_nvs.h projects/bsd_rdma_4_9/sys/dev/hyperv/netvsc/hn_rndis.c projects/bsd_rdma_4_9/sys/dev/hyperv/netvsc/hn_rndis.h projects/bsd_rdma_4_9/sys/dev/hyperv/netvsc/if_hn.c projects/bsd_rdma_4_9/sys/dev/hyperv/netvsc/if_hnreg.h projects/bsd_rdma_4_9/sys/dev/hyperv/netvsc/if_hnvar.h projects/bsd_rdma_4_9/sys/dev/hyperv/pcib/vmbus_pcib.c projects/bsd_rdma_4_9/sys/dev/hyperv/storvsc/hv_storvsc_drv_freebsd.c projects/bsd_rdma_4_9/sys/dev/hyperv/storvsc/hv_vstorage.h projects/bsd_rdma_4_9/sys/dev/hyperv/utilities/hv_kvp.c projects/bsd_rdma_4_9/sys/dev/hyperv/utilities/vmbus_timesync.c projects/bsd_rdma_4_9/sys/dev/hyperv/vmbus/amd64/hyperv_machdep.c projects/bsd_rdma_4_9/sys/dev/hyperv/vmbus/hyperv.c projects/bsd_rdma_4_9/sys/dev/hyperv/vmbus/vmbus.c projects/bsd_rdma_4_9/sys/dev/hyperv/vmbus/vmbus_et.c projects/bsd_rdma_4_9/sys/dev/iicbus/nxprtc.c projects/bsd_rdma_4_9/sys/dev/iicbus/s35390a.c projects/bsd_rdma_4_9/sys/dev/nvme/nvme.c projects/bsd_rdma_4_9/sys/dev/pci/pci_host_generic.h projects/bsd_rdma_4_9/sys/dev/qlnx/qlnxe/qlnx_def.h projects/bsd_rdma_4_9/sys/dev/qlnx/qlnxe/qlnx_os.c projects/bsd_rdma_4_9/sys/dev/qlnx/qlnxe/qlnx_ver.h projects/bsd_rdma_4_9/sys/dev/safe/safe.c projects/bsd_rdma_4_9/sys/dev/syscons/scterm-teken.c projects/bsd_rdma_4_9/sys/dev/syscons/syscons.c projects/bsd_rdma_4_9/sys/dev/syscons/syscons.h projects/bsd_rdma_4_9/sys/dev/usb/quirk/usb_quirk.c projects/bsd_rdma_4_9/sys/dev/usb/quirk/usb_quirk.h projects/bsd_rdma_4_9/sys/dev/usb/usb_hid.c projects/bsd_rdma_4_9/sys/dev/usb/usbhid.h projects/bsd_rdma_4_9/sys/dev/vt/vt_core.c projects/bsd_rdma_4_9/sys/dev/xen/timer/timer.c projects/bsd_rdma_4_9/sys/fs/nfsclient/nfs_clbio.c projects/bsd_rdma_4_9/sys/fs/nfsclient/nfs_clnode.c projects/bsd_rdma_4_9/sys/fs/nfsclient/nfs_clport.c projects/bsd_rdma_4_9/sys/fs/nfsclient/nfs_clsubs.c projects/bsd_rdma_4_9/sys/fs/nfsclient/nfs_clvnops.c projects/bsd_rdma_4_9/sys/fs/nfsclient/nfsnode.h projects/bsd_rdma_4_9/sys/geom/journal/g_journal.c projects/bsd_rdma_4_9/sys/i386/i386/exception.s projects/bsd_rdma_4_9/sys/i386/i386/minidump_machdep.c projects/bsd_rdma_4_9/sys/i386/include/intr_machdep.h projects/bsd_rdma_4_9/sys/isa/rtc.h projects/bsd_rdma_4_9/sys/isa/syscons_isa.c projects/bsd_rdma_4_9/sys/kern/kern_dump.c projects/bsd_rdma_4_9/sys/kern/kern_ktr.c projects/bsd_rdma_4_9/sys/kern/kern_sendfile.c projects/bsd_rdma_4_9/sys/kern/kern_shutdown.c projects/bsd_rdma_4_9/sys/kern/subr_autoconf.c projects/bsd_rdma_4_9/sys/kern/subr_blist.c projects/bsd_rdma_4_9/sys/kern/subr_intr.c projects/bsd_rdma_4_9/sys/kern/subr_sbuf.c projects/bsd_rdma_4_9/sys/kern/subr_smp.c projects/bsd_rdma_4_9/sys/kern/vfs_bio.c projects/bsd_rdma_4_9/sys/kern/vfs_subr.c projects/bsd_rdma_4_9/sys/libkern/x86/crc32_sse42.c projects/bsd_rdma_4_9/sys/mips/atheros/if_arge.c projects/bsd_rdma_4_9/sys/mips/conf/XLP.hints projects/bsd_rdma_4_9/sys/mips/conf/XLR projects/bsd_rdma_4_9/sys/mips/conf/XLR64 projects/bsd_rdma_4_9/sys/mips/conf/XLRN32 projects/bsd_rdma_4_9/sys/mips/conf/std.XLP projects/bsd_rdma_4_9/sys/mips/mips/minidump_machdep.c projects/bsd_rdma_4_9/sys/mips/mips/sc_machdep.c projects/bsd_rdma_4_9/sys/mips/rmi/xlr_i2c.c projects/bsd_rdma_4_9/sys/modules/Makefile projects/bsd_rdma_4_9/sys/modules/armv8crypto/Makefile projects/bsd_rdma_4_9/sys/modules/dtb/rpi/Makefile projects/bsd_rdma_4_9/sys/modules/i2c/Makefile projects/bsd_rdma_4_9/sys/modules/qlnx/qlnxe/Makefile projects/bsd_rdma_4_9/sys/modules/usb/Makefile projects/bsd_rdma_4_9/sys/net/bpf.c projects/bsd_rdma_4_9/sys/net/if_vlan.c projects/bsd_rdma_4_9/sys/netinet/tcp_usrreq.c projects/bsd_rdma_4_9/sys/powerpc/powerpc/sc_machdep.c projects/bsd_rdma_4_9/sys/sparc64/sparc64/dump_machdep.c projects/bsd_rdma_4_9/sys/sparc64/sparc64/pmap.c projects/bsd_rdma_4_9/sys/sys/blist.h projects/bsd_rdma_4_9/sys/sys/conf.h projects/bsd_rdma_4_9/sys/sys/consio.h projects/bsd_rdma_4_9/sys/sys/gtaskqueue.h projects/bsd_rdma_4_9/sys/sys/kernel.h projects/bsd_rdma_4_9/sys/sys/kerneldump.h projects/bsd_rdma_4_9/sys/sys/sbuf.h projects/bsd_rdma_4_9/sys/sys/taskqueue.h projects/bsd_rdma_4_9/sys/sys/vnode.h projects/bsd_rdma_4_9/sys/teken/sequences projects/bsd_rdma_4_9/sys/teken/teken.h projects/bsd_rdma_4_9/sys/teken/teken_subr_compat.h projects/bsd_rdma_4_9/sys/vm/vm_glue.c projects/bsd_rdma_4_9/sys/vm/vm_kern.c projects/bsd_rdma_4_9/sys/vm/vm_object.c projects/bsd_rdma_4_9/sys/vm/vm_object.h projects/bsd_rdma_4_9/sys/vm/vm_page.c projects/bsd_rdma_4_9/sys/vm/vm_page.h projects/bsd_rdma_4_9/sys/x86/acpica/srat.c projects/bsd_rdma_4_9/sys/x86/cpufreq/hwpstate.c projects/bsd_rdma_4_9/sys/x86/isa/atrtc.c projects/bsd_rdma_4_9/sys/x86/x86/intr_machdep.c projects/bsd_rdma_4_9/sys/x86/x86/mp_x86.c projects/bsd_rdma_4_9/tests/Makefile projects/bsd_rdma_4_9/tests/sys/Makefile.inc projects/bsd_rdma_4_9/tools/build/mk/OptionalObsoleteFiles.inc projects/bsd_rdma_4_9/usr.bin/apply/Makefile projects/bsd_rdma_4_9/usr.bin/basename/Makefile projects/bsd_rdma_4_9/usr.bin/bsdcat/Makefile projects/bsd_rdma_4_9/usr.bin/calendar/Makefile projects/bsd_rdma_4_9/usr.bin/calendar/calendars/calendar.freebsd projects/bsd_rdma_4_9/usr.bin/cmp/Makefile projects/bsd_rdma_4_9/usr.bin/col/Makefile projects/bsd_rdma_4_9/usr.bin/comm/Makefile projects/bsd_rdma_4_9/usr.bin/compress/Makefile projects/bsd_rdma_4_9/usr.bin/cpio/Makefile projects/bsd_rdma_4_9/usr.bin/csplit/Makefile projects/bsd_rdma_4_9/usr.bin/cut/Makefile projects/bsd_rdma_4_9/usr.bin/diff/Makefile projects/bsd_rdma_4_9/usr.bin/diff3/Makefile projects/bsd_rdma_4_9/usr.bin/dirname/Makefile projects/bsd_rdma_4_9/usr.bin/du/Makefile projects/bsd_rdma_4_9/usr.bin/file2c/Makefile projects/bsd_rdma_4_9/usr.bin/getconf/Makefile projects/bsd_rdma_4_9/usr.bin/grep/Makefile projects/bsd_rdma_4_9/usr.bin/grep/util.c projects/bsd_rdma_4_9/usr.bin/gzip/Makefile projects/bsd_rdma_4_9/usr.bin/hexdump/Makefile projects/bsd_rdma_4_9/usr.bin/ident/Makefile projects/bsd_rdma_4_9/usr.bin/indent/Makefile projects/bsd_rdma_4_9/usr.bin/join/Makefile projects/bsd_rdma_4_9/usr.bin/jot/Makefile projects/bsd_rdma_4_9/usr.bin/lastcomm/Makefile projects/bsd_rdma_4_9/usr.bin/limits/Makefile projects/bsd_rdma_4_9/usr.bin/m4/Makefile projects/bsd_rdma_4_9/usr.bin/mkesdb/yacc.y projects/bsd_rdma_4_9/usr.bin/mkimg/Makefile projects/bsd_rdma_4_9/usr.bin/mt/mt.1 projects/bsd_rdma_4_9/usr.bin/ncal/Makefile projects/bsd_rdma_4_9/usr.bin/pr/Makefile projects/bsd_rdma_4_9/usr.bin/printf/Makefile projects/bsd_rdma_4_9/usr.bin/procstat/Makefile projects/bsd_rdma_4_9/usr.bin/sdiff/Makefile projects/bsd_rdma_4_9/usr.bin/sed/Makefile projects/bsd_rdma_4_9/usr.bin/soelim/Makefile projects/bsd_rdma_4_9/usr.bin/stat/Makefile projects/bsd_rdma_4_9/usr.bin/tail/Makefile projects/bsd_rdma_4_9/usr.bin/tar/Makefile projects/bsd_rdma_4_9/usr.bin/timeout/Makefile projects/bsd_rdma_4_9/usr.bin/tr/Makefile projects/bsd_rdma_4_9/usr.bin/truncate/Makefile projects/bsd_rdma_4_9/usr.bin/uniq/Makefile projects/bsd_rdma_4_9/usr.bin/units/Makefile projects/bsd_rdma_4_9/usr.bin/units/units.1 projects/bsd_rdma_4_9/usr.bin/uudecode/Makefile projects/bsd_rdma_4_9/usr.bin/uuencode/Makefile projects/bsd_rdma_4_9/usr.bin/xargs/Makefile projects/bsd_rdma_4_9/usr.bin/xinstall/Makefile projects/bsd_rdma_4_9/usr.bin/xo/Makefile projects/bsd_rdma_4_9/usr.bin/yacc/Makefile projects/bsd_rdma_4_9/usr.sbin/bluetooth/bthidcontrol/sdp.c projects/bsd_rdma_4_9/usr.sbin/bluetooth/bthidd/bthid_config.h projects/bsd_rdma_4_9/usr.sbin/bluetooth/bthidd/bthidd.conf.sample projects/bsd_rdma_4_9/usr.sbin/bluetooth/bthidd/bthidd.h projects/bsd_rdma_4_9/usr.sbin/bluetooth/bthidd/hid.c projects/bsd_rdma_4_9/usr.sbin/bluetooth/bthidd/lexer.l projects/bsd_rdma_4_9/usr.sbin/bluetooth/bthidd/parser.y projects/bsd_rdma_4_9/usr.sbin/bluetooth/bthidd/server.c projects/bsd_rdma_4_9/usr.sbin/bluetooth/bthidd/session.c projects/bsd_rdma_4_9/usr.sbin/bootparamd/bootparamd/bootparamd.c projects/bsd_rdma_4_9/usr.sbin/bootparamd/callbootd/callbootd.c projects/bsd_rdma_4_9/usr.sbin/chown/Makefile projects/bsd_rdma_4_9/usr.sbin/cpucontrol/cpucontrol.8 projects/bsd_rdma_4_9/usr.sbin/etcupdate/Makefile projects/bsd_rdma_4_9/usr.sbin/extattr/Makefile projects/bsd_rdma_4_9/usr.sbin/fstyp/Makefile projects/bsd_rdma_4_9/usr.sbin/makefs/Makefile projects/bsd_rdma_4_9/usr.sbin/newsyslog/Makefile projects/bsd_rdma_4_9/usr.sbin/nmtree/Makefile projects/bsd_rdma_4_9/usr.sbin/pw/Makefile projects/bsd_rdma_4_9/usr.sbin/pw/pw_user.c projects/bsd_rdma_4_9/usr.sbin/pw/tests/pw_useradd_test.sh projects/bsd_rdma_4_9/usr.sbin/pw/tests/pw_usermod_test.sh projects/bsd_rdma_4_9/usr.sbin/rpcbind/Makefile projects/bsd_rdma_4_9/usr.sbin/sa/Makefile projects/bsd_rdma_4_9/usr.sbin/vidcontrol/vidcontrol.1 projects/bsd_rdma_4_9/usr.sbin/vidcontrol/vidcontrol.c Directory Properties: projects/bsd_rdma_4_9/ (props changed) projects/bsd_rdma_4_9/contrib/binutils/ (props changed) projects/bsd_rdma_4_9/contrib/compiler-rt/ (props changed) projects/bsd_rdma_4_9/contrib/gcc/ (props changed) projects/bsd_rdma_4_9/contrib/libc++/ (props changed) projects/bsd_rdma_4_9/contrib/llvm/ (props changed) projects/bsd_rdma_4_9/contrib/llvm/tools/clang/ (props changed) projects/bsd_rdma_4_9/contrib/llvm/tools/lld/ (props changed) projects/bsd_rdma_4_9/contrib/llvm/tools/lldb/ (props changed) projects/bsd_rdma_4_9/contrib/mdocml/ (props changed) projects/bsd_rdma_4_9/contrib/zstd/ (props changed) projects/bsd_rdma_4_9/gnu/usr.bin/binutils/ (props changed) projects/bsd_rdma_4_9/gnu/usr.bin/gdb/ (props changed) projects/bsd_rdma_4_9/sys/cddl/contrib/opensolaris/ (props changed) Modified: projects/bsd_rdma_4_9/Makefile ============================================================================== --- projects/bsd_rdma_4_9/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -221,7 +221,7 @@ SUB_MAKE= `test -x ${MYMAKE} && echo ${MYMAKE} || echo SUB_MAKE= ${MAKE} -m ${.CURDIR}/share/mk .endif -_MAKE= PATH=${PATH} MAKE_CMD=${MAKE} ${SUB_MAKE} -f Makefile.inc1 \ +_MAKE= PATH=${PATH} MAKE_CMD="${MAKE}" ${SUB_MAKE} -f Makefile.inc1 \ TARGET=${_TARGET} TARGET_ARCH=${_TARGET_ARCH} # Only allow meta mode for the whitelisted targets. See META_TGT_WHITELIST @@ -245,12 +245,17 @@ _MAKE+= MK_META_MODE=no .endif # !exists(/dev/filemon) && !defined(NO_FILEMON) .endif # !defined(_CAN_USE_META_MODE) -# Guess machine architecture from machine type, and vice versa. +# Guess target architecture from target type, and vice versa, based on +# historic FreeBSD practice of tending to have TARGET == TARGET_ARCH +# expanding to TARGET == TARGET_CPUARCH in recent times, with known +# exceptions. .if !defined(TARGET_ARCH) && defined(TARGET) +# T->TA mapping is usually TARGET with arm64 the odd man out _TARGET_ARCH= ${TARGET:S/arm64/aarch64/} .elif !defined(TARGET) && defined(TARGET_ARCH) && \ ${TARGET_ARCH} != ${MACHINE_ARCH} -_TARGET= ${TARGET_ARCH:C/mips(n32|64)?(el)?(hf)?/mips/:C/arm(v6)?(eb)?/arm/:C/aarch64/arm64/:C/powerpc64/powerpc/:C/powerpcspe/powerpc/:C/riscv64(sf)?/riscv/} +# TA->T mapping is accidentally CPUARCH with aarch64 the odd man out +_TARGET= ${TARGET_ARCH:${__TO_CPUARCH}:C/aarch64/arm64/} .endif .if defined(TARGET) && !defined(_TARGET) _TARGET=${TARGET} Modified: projects/bsd_rdma_4_9/Makefile.inc1 ============================================================================== --- projects/bsd_rdma_4_9/Makefile.inc1 Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/Makefile.inc1 Mon Aug 21 11:56:47 2017 (r322747) @@ -346,6 +346,12 @@ SVN= ${_P}/${_S} . endfor .endif SVNFLAGS?= -r HEAD +.if !defined(VCS_REVISION) && empty(VCS_REVISION) +_VCS_REVISION?= $$(eval ${SVNVERSION_CMD} ${SRCDIR}) +. if !empty(_VCS_REVISION) +VCS_REVISION= $$(echo r${_VCS_REVISION}) +. endif +.endif .if !defined(OSRELDATE) .if exists(/usr/include/osreldate.h) @@ -1493,20 +1499,24 @@ packagekernel: .PHONY @${DESTDIR}/${DISTDIR}/kernel.meta | \ ${XZ_CMD} > ${PACKAGEDIR}/kernel.txz .endif +.if ${MK_DEBUG_FILES} != "no" cd ${DESTDIR}/${DISTDIR}/kernel; \ tar cvf - --include '*/*/*.debug' \ @${DESTDIR}/${DISTDIR}/kernel.meta | \ ${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel-dbg.txz +.endif .if ${BUILDKERNELS:[#]} > 1 && ${NO_INSTALLEXTRAKERNELS} != "yes" .for _kernel in ${BUILDKERNELS:[2..-1]} cd ${DESTDIR}/${DISTDIR}/kernel.${_kernel}; \ tar cvf - --exclude '*.debug' \ @${DESTDIR}/${DISTDIR}/kernel.${_kernel}.meta | \ ${XZ_CMD} > ${PACKAGEDIR}/kernel.${_kernel}.txz +.if ${MK_DEBUG_FILES} != "no" cd ${DESTDIR}/${DISTDIR}/kernel.${_kernel}; \ tar cvf - --include '*/*/*.debug' \ @${DESTDIR}/${DISTDIR}/kernel.${_kernel}.meta | \ ${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel.${_kernel}-dbg.txz +.endif .endfor .endif .else @@ -1515,17 +1525,21 @@ packagekernel: .PHONY tar cvf - --exclude '*.debug' . | \ ${XZ_CMD} > ${PACKAGEDIR}/kernel.txz .endif +.if ${MK_DEBUG_FILES} != "no" cd ${DESTDIR}/${DISTDIR}/kernel; \ tar cvf - --include '*/*/*.debug' $$(eval find .) | \ ${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel-dbg.txz +.endif .if ${BUILDKERNELS:[#]} > 1 && ${NO_INSTALLEXTRAKERNELS} != "yes" .for _kernel in ${BUILDKERNELS:[2..-1]} cd ${DESTDIR}/${DISTDIR}/kernel.${_kernel}; \ tar cvf - --exclude '*.debug' . | \ ${XZ_CMD} > ${PACKAGEDIR}/kernel.${_kernel}.txz +.if ${MK_DEBUG_FILES} != "no" cd ${DESTDIR}/${DISTDIR}/kernel.${_kernel}; \ tar cvf - --include '*/*/*.debug' $$(eval find .) | \ ${XZ_CMD} > ${DESTDIR}/${DISTDIR}/kernel.${_kernel}-dbg.txz +.endif .endfor .endif .endif @@ -1618,9 +1632,9 @@ create-world-package-${pkgname}: .PHONY @awk -F\" ' \ /^name/ { printf("===> Creating %s-", $$2); next } \ /^version/ { print $$2; next } \ - ' ${WSTAGEDIR}/${pkgname}.ucl ; + ' ${WSTAGEDIR}/${pkgname}.ucl @if [ "${pkgname}" == "runtime" ]; then \ - sed -i '' -e "s/%KERNCONF%/${INSTALLKERNEL:tl}/" ${WSTAGEDIR}/${pkgname}.ucl ; \ + sed -i '' -e "s/%VCS_REVISION%/${VCS_REVISION}/" ${WSTAGEDIR}/${pkgname}.ucl ; \ fi ${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/bin/sh -o ALLOW_BASE_SHLIBS=yes \ create -M ${WSTAGEDIR}/${pkgname}.ucl \ @@ -1632,7 +1646,10 @@ create-world-package-${pkgname}: .PHONY create-kernel-packages: .PHONY _default_flavor= -default .if exists(${KSTAGEDIR}/kernel.meta) -. for flavor in "" -debug +. if ${MK_DEBUG_FILES} != "no" +_debug=-debug +. endif +. for flavor in "" ${_debug} create-kernel-packages: create-kernel-packages-flavor${flavor:C,^""$,${_default_flavor},} create-kernel-packages-flavor${flavor:C,^""$,${_default_flavor},}: _pkgbootstrap .PHONY @cd ${KSTAGEDIR}/${DISTDIR} ; \ @@ -1647,6 +1664,7 @@ create-kernel-packages-flavor${flavor:C,^""$,${_defaul -e "s/%DESC%/FreeBSD ${INSTALLKERNEL} kernel ${flavor}/" \ -e "s/%CAP_MKDB_ENDIAN%/$${cap_arg}/g" \ -e "s/%PWD_MKDB_ENDIAN%/$${pwd_arg}/g" \ + -e "s/ %VCS_REVISION%/${VCS_REVISION}/" \ ${SRCDIR}/release/packages/kernel.ucl \ > ${KSTAGEDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}${flavor}.ucl ; \ awk -F\" ' \ @@ -1663,7 +1681,10 @@ create-kernel-packages-flavor${flavor:C,^""$,${_defaul .if ${BUILDKERNELS:[#]} > 1 && ${NO_INSTALLEXTRAKERNELS} != "yes" . for _kernel in ${BUILDKERNELS:[2..-1]} . if exists(${KSTAGEDIR}/kernel.${_kernel}.meta) -. for flavor in "" -debug +. if ${MK_DEBUG_FILES} != "no" +_debug=-debug +. endif +. for flavor in "" ${_debug} create-kernel-packages: create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}-${_kernel} create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}-${_kernel}: _pkgbootstrap .PHONY @cd ${KSTAGEDIR}/kernel.${_kernel} ; \ @@ -1678,6 +1699,7 @@ create-kernel-packages-extra-flavor${flavor:C,^""$,${_ -e "s/%DESC%/FreeBSD ${_kernel} kernel ${flavor}/" \ -e "s/%CAP_MKDB_ENDIAN%/$${cap_arg}/g" \ -e "s/%PWD_MKDB_ENDIAN%/$${pwd_arg}/g" \ + -e "s/ %VCS_REVISION%/${VCS_REVISION}/" \ ${SRCDIR}/release/packages/kernel.ucl \ > ${KSTAGEDIR}/kernel.${_kernel}/kernel.${_kernel}${flavor}.ucl ; \ awk -F\" ' \ Modified: projects/bsd_rdma_4_9/Makefile.libcompat ============================================================================== --- projects/bsd_rdma_4_9/Makefile.libcompat Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/Makefile.libcompat Mon Aug 21 11:56:47 2017 (r322747) @@ -179,7 +179,7 @@ build${libcompat}: .PHONY .endfor ${_+_}cd ${.CURDIR}; \ ${LIBCOMPATWMAKE} -f Makefile.inc1 -DNO_FSCHG libraries -.if ${libcompat} == "32" +.if ${libcompat} == "32" && !defined(NO_RTLD) .for _t in ${_obj} all ${_+_}cd ${.CURDIR}/libexec/rtld-elf; PROG=ld-elf32.so.1 ${LIBCOMPATWMAKE} \ -DNO_FSCHG DIRPRFX=libexec/rtld-elf/ ${_t} @@ -192,7 +192,7 @@ distribute${libcompat} install${libcompat}: .PHONY .for _dir in ${_LC_LIBDIRS.yes} ${_+_}cd ${.CURDIR}/${_dir}; ${LIBCOMPATIMAKE} ${.TARGET:S/${libcompat}$//} .endfor -.if ${libcompat} == "32" +.if ${libcompat} == "32" && !defined(NO_RTLD) ${_+_}cd ${.CURDIR}/libexec/rtld-elf; \ PROG=ld-elf32.so.1 ${LIBCOMPATIMAKE} ${.TARGET:S/32$//} ${_+_}cd ${.CURDIR}/usr.bin/ldd; PROG=ldd32 ${LIBCOMPATIMAKE} \ Modified: projects/bsd_rdma_4_9/UPDATING ============================================================================== --- projects/bsd_rdma_4_9/UPDATING Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/UPDATING Mon Aug 21 11:56:47 2017 (r322747) @@ -51,6 +51,27 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12.x IS SLOW: ****************************** SPECIAL WARNING: ****************************** +20170814: + "make check" behavior (made in ^/head@r295380) has been changed to + execute from a limited sandbox, as opposed to executing from + ${TESTSDIR}. + + Behavioral changes: + - The "beforecheck" and "aftercheck" targets are now specified. + - ${CHECKDIR} (added in commit noted above) has been removed. + - Legacy behavior can be enabled by setting + WITHOUT_MAKE_CHECK_USE_SANDBOX in src.conf(5) or the environment. + + If the limited sandbox mode is enabled, "make check" will execute + "make distribution", then install, execute the tests, and clean up the + sandbox if successful. + + The "make distribution" and "make install" targets are typically run as + root to set appropriate permissions and ownership at installation time. + The end-user should set "WITH_INSTALL_AS_USER" in src.conf(5) or the + environment if executing "make check" with limited sandbox mode using + an unprivileged user. + 20170808: Since the switch to GPT disk labels, fsck for UFS/FFS has been unable to automatically find alternate superblocks. As of r322297, Modified: projects/bsd_rdma_4_9/bin/cat/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/cat/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/cat/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -6,6 +6,7 @@ PACKAGE=runtime PROG= cat +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/chmod/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/chmod/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/chmod/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -6,6 +6,7 @@ PACKAGE=runtime PROG= chmod +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/date/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/date/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/date/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -7,6 +7,7 @@ PACKAGE=runtime PROG= date SRCS= date.c netdate.c vary.c +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/dd/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/dd/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/dd/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -38,6 +38,7 @@ test: ${PROG} gen @rm -f gen 1M_zeroes* obs_zeroes +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/echo/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/echo/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/echo/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -6,6 +6,7 @@ PACKAGE=runtime PROG= echo +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/expr/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/expr/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/expr/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -12,6 +12,7 @@ CFLAGS+= -fwrapv NO_WMISSING_VARIABLE_DECLARATIONS= +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/ln/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/ln/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/ln/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -10,6 +10,7 @@ MAN= ln.1 symlink.7 LINKS= ${BINDIR}/ln ${BINDIR}/link MLINKS= ln.1 link.1 +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/ls/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/ls/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/ls/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -14,6 +14,7 @@ CFLAGS+= -DCOLORLS LIBADD+= termcapw .endif +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/mv/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/mv/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/mv/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -6,6 +6,7 @@ PACKAGE=runtime PROG= mv +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/pax/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/pax/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/pax/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -33,6 +33,7 @@ SRCS= ar_io.c ar_subs.c buf_subs.c cache.c cpio.c file gen_subs.c getoldopt.c options.c pat_rep.c pax.c sel_subs.c \ tables.c tar.c tty_subs.c +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/pkill/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/pkill/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/pkill/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -19,6 +19,7 @@ MLINKS= pkill.1 pgrep.1 SYMLINKS= ../..${BINDIR}/pkill /usr/bin/pkill SYMLINKS+= ../..${BINDIR}/pgrep /usr/bin/pgrep +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/pkill/pkill.c ============================================================================== --- projects/bsd_rdma_4_9/bin/pkill/pkill.c Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/pkill/pkill.c Mon Aug 21 11:56:47 2017 (r322747) @@ -568,6 +568,8 @@ main(int argc, char **argv) continue; rv |= (*action)(kp); } + if (rv && pgrep) + putchar('\n'); if (!did_action && !pgrep && longfmt) fprintf(stderr, "No matching processes belonging to you were found\n"); Modified: projects/bsd_rdma_4_9/bin/pwait/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/pwait/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/pwait/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -5,6 +5,7 @@ PACKAGE=runtime PROG= pwait +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/sh/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/sh/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/sh/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -64,6 +64,7 @@ syntax.c syntax.h: mksyntax token.h: mktokens sh ${.CURDIR}/mktokens +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/sh/tests/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/sh/tests/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/sh/tests/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -6,6 +6,7 @@ TESTS_SUBDIRS+= builtins TESTS_SUBDIRS+= errors TESTS_SUBDIRS+= execution TESTS_SUBDIRS+= expansion +TESTS_SUBDIRS+= invocation TESTS_SUBDIRS+= parameters TESTS_SUBDIRS+= parser TESTS_SUBDIRS+= set-e Modified: projects/bsd_rdma_4_9/bin/sleep/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/sleep/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/sleep/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -6,6 +6,7 @@ PACKAGE=runtime PROG= sleep +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/bin/test/Makefile ============================================================================== --- projects/bsd_rdma_4_9/bin/test/Makefile Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/bin/test/Makefile Mon Aug 21 11:56:47 2017 (r322747) @@ -8,6 +8,7 @@ PROG= test LINKS= ${BINDIR}/test ${BINDIR}/[ MLINKS= test.1 [.1 +HAS_TESTS= SUBDIR.${MK_TESTS}+= tests .include <bsd.prog.mk> Modified: projects/bsd_rdma_4_9/contrib/binutils/bfd/ecoff.c ============================================================================== --- projects/bsd_rdma_4_9/contrib/binutils/bfd/ecoff.c Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/binutils/bfd/ecoff.c Mon Aug 21 11:56:47 2017 (r322747) @@ -1878,7 +1878,7 @@ _bfd_ecoff_sizeof_headers (bfd *abfd, ret = (bfd_coff_filhsz (abfd) + bfd_coff_aoutsz (abfd) + c * bfd_coff_scnhsz (abfd)); - return BFD_ALIGN (ret, 16); + return (int) BFD_ALIGN (ret, 16); } /* Get the contents of a section. */ Modified: projects/bsd_rdma_4_9/contrib/binutils/gas/config/tc-mips.c ============================================================================== --- projects/bsd_rdma_4_9/contrib/binutils/gas/config/tc-mips.c Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/binutils/gas/config/tc-mips.c Mon Aug 21 11:56:47 2017 (r322747) @@ -2920,7 +2920,7 @@ append_insn (struct mips_cl_insn *ip, expressionS *add instruction. May want to add this support in the future. */ } /* Never set the bit for $0, which is always zero. */ - mips_gprmask &= ~1 << 0; + mips_gprmask &= ~(1 << 0); } else { @@ -3310,7 +3310,7 @@ macro_end (void) warning now. */ const char *msg = macro_warning (subtype); if (msg != 0) - as_warn (msg); + as_warn ("%s", msg); } else { @@ -14463,7 +14463,7 @@ md_convert_frag (bfd *abfd ATTRIBUTE_UNUSED, segT asec { const char *msg = macro_warning (fragp->fr_subtype); if (msg != 0) - as_warn_where (fragp->fr_file, fragp->fr_line, msg); + as_warn_where (fragp->fr_file, fragp->fr_line, "%s", msg); } /* Go through all the fixups for the first sequence. Disable them Modified: projects/bsd_rdma_4_9/contrib/libc++/include/string ============================================================================== --- projects/bsd_rdma_4_9/contrib/libc++/include/string Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/libc++/include/string Mon Aug 21 11:56:47 2017 (r322747) @@ -556,6 +556,8 @@ template<class _CharT, class _Traits, class _Allocator basic_string<_CharT, _Traits, _Allocator> operator+(const basic_string<_CharT, _Traits, _Allocator>& __x, _CharT __y); +_LIBCPP_EXTERN_TEMPLATE(_LIBCPP_FUNC_VIS string operator+<char, char_traits<char>, allocator<char> >(char const*, string const&)) + template <bool> class _LIBCPP_TEMPLATE_VIS __basic_string_common { @@ -3999,7 +4001,6 @@ basic_string<_CharT, _Traits, _Allocator>::__subscript _LIBCPP_EXTERN_TEMPLATE(class _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS basic_string<char>) _LIBCPP_EXTERN_TEMPLATE(class _LIBCPP_EXTERN_TEMPLATE_TYPE_VIS basic_string<wchar_t>) -_LIBCPP_EXTERN_TEMPLATE(_LIBCPP_FUNC_VIS string operator+<char, char_traits<char>, allocator<char> >(char const*, string const&)) #if _LIBCPP_STD_VER > 11 // Literal suffixes for basic_string [basic.string.literals] Modified: projects/bsd_rdma_4_9/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h Mon Aug 21 11:56:47 2017 (r322747) @@ -1220,8 +1220,9 @@ class SelectionDAG { (public) /// If an existing load has uses of its chain, create a token factor node with /// that chain and the new memory node's chain and update users of the old /// chain to the token factor. This ensures that the new memory node will have - /// the same relative memory dependency position as the old load. - void makeEquivalentMemoryOrdering(LoadSDNode *Old, SDValue New); + /// the same relative memory dependency position as the old load. Returns the + /// new merged load chain. + SDValue makeEquivalentMemoryOrdering(LoadSDNode *Old, SDValue New); /// Topological-sort the AllNodes list and a /// assign a unique node id for each node in the DAG based on their Modified: projects/bsd_rdma_4_9/contrib/llvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h Mon Aug 21 11:56:47 2017 (r322747) @@ -94,9 +94,9 @@ template <typename BaseLayerT> class LazyEmittingLayer llvm_unreachable("Invalid emit-state."); } - void removeModuleFromBaseLayer(BaseLayerT &BaseLayer) { - if (EmitState != NotEmitted) - BaseLayer.removeModule(Handle); + Error removeModuleFromBaseLayer(BaseLayerT& BaseLayer) { + return EmitState != NotEmitted ? BaseLayer.removeModule(Handle) + : Error::success(); } void emitAndFinalize(BaseLayerT &BaseLayer) { @@ -226,9 +226,9 @@ template <typename BaseLayerT> class LazyEmittingLayer /// This method will free the memory associated with the given module, both /// in this layer, and the base layer. Error removeModule(ModuleHandleT H) { - (*H)->removeModuleFromBaseLayer(BaseLayer); + Error Err = (*H)->removeModuleFromBaseLayer(BaseLayer); ModuleList.erase(H); - return Error::success(); + return Err; } /// @brief Search for the given named symbol. Modified: projects/bsd_rdma_4_9/contrib/llvm/include/llvm/Object/COFFImportFile.h ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/include/llvm/Object/COFFImportFile.h Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/include/llvm/Object/COFFImportFile.h Mon Aug 21 11:56:47 2017 (r322747) @@ -73,6 +73,7 @@ class COFFImportFile : public SymbolicFile { (private) struct COFFShortExport { std::string Name; std::string ExtName; + std::string SymbolName; uint16_t Ordinal = 0; bool Noname = false; @@ -98,7 +99,8 @@ struct COFFShortExport { std::error_code writeImportLibrary(StringRef ImportName, StringRef Path, ArrayRef<COFFShortExport> Exports, - COFF::MachineTypes Machine); + COFF::MachineTypes Machine, + bool MakeWeakAliases); } // namespace object } // namespace llvm Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/Analysis/ScalarEvolution.cpp ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/Analysis/ScalarEvolution.cpp Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/Analysis/ScalarEvolution.cpp Mon Aug 21 11:56:47 2017 (r322747) @@ -162,6 +162,11 @@ static cl::opt<unsigned> cl::desc("Maximum depth of recursive SExt/ZExt"), cl::init(8)); +static cl::opt<unsigned> + MaxAddRecSize("scalar-evolution-max-add-rec-size", cl::Hidden, + cl::desc("Max coefficients in AddRec during evolving"), + cl::init(16)); + //===----------------------------------------------------------------------===// // SCEV class definitions //===----------------------------------------------------------------------===// @@ -2878,6 +2883,12 @@ const SCEV *ScalarEvolution::getMulExpr(SmallVectorImp if (!OtherAddRec || OtherAddRec->getLoop() != AddRecLoop) continue; + // Limit max number of arguments to avoid creation of unreasonably big + // SCEVAddRecs with very complex operands. + if (AddRec->getNumOperands() + OtherAddRec->getNumOperands() - 1 > + MaxAddRecSize) + continue; + bool Overflow = false; Type *Ty = AddRec->getType(); bool LargerThan64Bits = getTypeSizeInBits(Ty) > 64; @@ -7582,6 +7593,25 @@ const SCEV *ScalarEvolution::computeSCEVAtScope(const const SCEV *BackedgeTakenCount = getBackedgeTakenCount(LI); if (const SCEVConstant *BTCC = dyn_cast<SCEVConstant>(BackedgeTakenCount)) { + + // This trivial case can show up in some degenerate cases where + // the incoming IR has not yet been fully simplified. + if (BTCC->getValue()->isZero()) { + Value *InitValue = nullptr; + bool MultipleInitValues = false; + for (unsigned i = 0; i < PN->getNumIncomingValues(); i++) { + if (!LI->contains(PN->getIncomingBlock(i))) { + if (!InitValue) + InitValue = PN->getIncomingValue(i); + else if (InitValue != PN->getIncomingValue(i)) { + MultipleInitValues = true; + break; + } + } + if (!MultipleInitValues && InitValue) + return getSCEV(InitValue); + } + } // Okay, we know how many times the containing loop executes. If // this is a constant evolving PHI node, get the final value at // the specified iteration number. Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/Analysis/ValueTracking.cpp ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/Analysis/ValueTracking.cpp Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/Analysis/ValueTracking.cpp Mon Aug 21 11:56:47 2017 (r322747) @@ -4458,6 +4458,10 @@ Optional<bool> llvm::isImpliedCondition(const Value *L unsigned Depth, AssumptionCache *AC, const Instruction *CxtI, const DominatorTree *DT) { + // Bail out when we hit the limit. + if (Depth == MaxDepth) + return None; + // A mismatch occurs when we compare a scalar cmp to a vector cmp, for example. if (LHS->getType() != RHS->getType()) return None; Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp Mon Aug 21 11:56:47 2017 (r322747) @@ -302,7 +302,21 @@ SDValue DAGTypeLegalizer::ScalarizeVecRes_SCALAR_TO_VE } SDValue DAGTypeLegalizer::ScalarizeVecRes_VSELECT(SDNode *N) { - SDValue Cond = GetScalarizedVector(N->getOperand(0)); + SDValue Cond = N->getOperand(0); + EVT OpVT = Cond.getValueType(); + SDLoc DL(N); + // The vselect result and true/value operands needs scalarizing, but it's + // not a given that the Cond does. For instance, in AVX512 v1i1 is legal. + // See the similar logic in ScalarizeVecRes_VSETCC + if (getTypeAction(OpVT) == TargetLowering::TypeScalarizeVector) { + Cond = GetScalarizedVector(Cond); + } else { + EVT VT = OpVT.getVectorElementType(); + Cond = DAG.getNode( + ISD::EXTRACT_VECTOR_ELT, DL, VT, Cond, + DAG.getConstant(0, DL, TLI.getVectorIdxTy(DAG.getDataLayout()))); + } + SDValue LHS = GetScalarizedVector(N->getOperand(1)); TargetLowering::BooleanContent ScalarBool = TLI.getBooleanContents(false, false); Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp Mon Aug 21 11:56:47 2017 (r322747) @@ -7262,22 +7262,23 @@ void SelectionDAG::TransferDbgValues(SDValue From, SDV AddDbgValue(I, ToNode, false); } -void SelectionDAG::makeEquivalentMemoryOrdering(LoadSDNode *OldLoad, - SDValue NewMemOp) { +SDValue SelectionDAG::makeEquivalentMemoryOrdering(LoadSDNode *OldLoad, + SDValue NewMemOp) { assert(isa<MemSDNode>(NewMemOp.getNode()) && "Expected a memop node"); - if (!OldLoad->hasAnyUseOfValue(1)) - return; - // The new memory operation must have the same position as the old load in // terms of memory dependency. Create a TokenFactor for the old load and new // memory operation and update uses of the old load's output chain to use that // TokenFactor. SDValue OldChain = SDValue(OldLoad, 1); SDValue NewChain = SDValue(NewMemOp.getNode(), 1); + if (!OldLoad->hasAnyUseOfValue(1)) + return NewChain; + SDValue TokenFactor = getNode(ISD::TokenFactor, SDLoc(OldLoad), MVT::Other, OldChain, NewChain); ReplaceAllUsesOfValueWith(OldChain, TokenFactor); UpdateNodeOperands(TokenFactor.getNode(), OldChain, NewChain); + return TokenFactor; } //===----------------------------------------------------------------------===// Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/VirtRegMap.cpp ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/VirtRegMap.cpp Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/CodeGen/VirtRegMap.cpp Mon Aug 21 11:56:47 2017 (r322747) @@ -180,6 +180,7 @@ class VirtRegRewriter : public MachineFunctionPass { void addLiveInsForSubRanges(const LiveInterval &LI, unsigned PhysReg) const; void handleIdentityCopy(MachineInstr &MI) const; void expandCopyBundle(MachineInstr &MI) const; + bool subRegLiveThrough(const MachineInstr &MI, unsigned SuperPhysReg) const; public: static char ID; @@ -415,6 +416,32 @@ void VirtRegRewriter::expandCopyBundle(MachineInstr &M } } +/// Check whether (part of) \p SuperPhysReg is live through \p MI. +/// \pre \p MI defines a subregister of a virtual register that +/// has been assigned to \p SuperPhysReg. +bool VirtRegRewriter::subRegLiveThrough(const MachineInstr &MI, + unsigned SuperPhysReg) const { + SlotIndex MIIndex = LIS->getInstructionIndex(MI); + SlotIndex BeforeMIUses = MIIndex.getBaseIndex(); + SlotIndex AfterMIDefs = MIIndex.getBoundaryIndex(); + for (MCRegUnitIterator Unit(SuperPhysReg, TRI); Unit.isValid(); ++Unit) { + const LiveRange &UnitRange = LIS->getRegUnit(*Unit); + // If the regunit is live both before and after MI, + // we assume it is live through. + // Generally speaking, this is not true, because something like + // "RU = op RU" would match that description. + // However, we know that we are trying to assess whether + // a def of a virtual reg, vreg, is live at the same time of RU. + // If we are in the "RU = op RU" situation, that means that vreg + // is defined at the same time as RU (i.e., "vreg, RU = op RU"). + // Thus, vreg and RU interferes and vreg cannot be assigned to + // SuperPhysReg. Therefore, this situation cannot happen. + if (UnitRange.liveAt(AfterMIDefs) && UnitRange.liveAt(BeforeMIUses)) + return true; + } + return false; +} + void VirtRegRewriter::rewrite() { bool NoSubRegLiveness = !MRI->subRegLivenessEnabled(); SmallVector<unsigned, 8> SuperDeads; @@ -452,7 +479,8 @@ void VirtRegRewriter::rewrite() { // A virtual register kill refers to the whole register, so we may // have to add <imp-use,kill> operands for the super-register. A // partial redef always kills and redefines the super-register. - if (MO.readsReg() && (MO.isDef() || MO.isKill())) + if ((MO.readsReg() && (MO.isDef() || MO.isKill())) || + (MO.isDef() && subRegLiveThrough(*MI, PhysReg))) SuperKills.push_back(PhysReg); if (MO.isDef()) { Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp Mon Aug 21 11:56:47 2017 (r322747) @@ -134,13 +134,13 @@ dumpDWARFv5StringOffsetsSection(raw_ostream &OS, Strin uint64_t StringOffset = StrOffsetExt.getRelocatedValue(EntrySize, &Offset); if (Format == DWARF32) { - OS << format("%8.8x ", StringOffset); uint32_t StringOffset32 = (uint32_t)StringOffset; + OS << format("%8.8x ", StringOffset32); const char *S = StrData.getCStr(&StringOffset32); if (S) OS << format("\"%s\"", S); } else - OS << format("%16.16x ", StringOffset); + OS << format("%16.16" PRIx64 " ", StringOffset); OS << "\n"; } } Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp Mon Aug 21 11:56:47 2017 (r322747) @@ -196,7 +196,7 @@ unsigned DWARFVerifier::verifyDebugInfoAttribute(const ++NumErrors; OS << "error: DW_AT_stmt_list offset is beyond .debug_line " "bounds: " - << format("0x%08" PRIx32, *SectionOffset) << "\n"; + << format("0x%08" PRIx64, *SectionOffset) << "\n"; Die.dump(OS, 0); OS << "\n"; } @@ -234,7 +234,7 @@ unsigned DWARFVerifier::verifyDebugInfoForm(const DWAR if (CUOffset >= CUSize) { ++NumErrors; OS << "error: " << FormEncodingString(Form) << " CU offset " - << format("0x%08" PRIx32, CUOffset) + << format("0x%08" PRIx64, CUOffset) << " is invalid (must be less than CU size of " << format("0x%08" PRIx32, CUSize) << "):\n"; Die.dump(OS, 0); @@ -366,7 +366,7 @@ void DWARFVerifier::verifyDebugLineRows() { if (Row.Address < PrevAddress) { ++NumDebugLineErrors; OS << "error: .debug_line[" - << format("0x%08" PRIx32, + << format("0x%08" PRIx64, *toSectionOffset(Die.find(DW_AT_stmt_list))) << "] row[" << RowIndex << "] decreases in address from previous row:\n"; @@ -381,7 +381,7 @@ void DWARFVerifier::verifyDebugLineRows() { if (Row.File > MaxFileIndex) { ++NumDebugLineErrors; OS << "error: .debug_line[" - << format("0x%08" PRIx32, + << format("0x%08" PRIx64, *toSectionOffset(Die.find(DW_AT_stmt_list))) << "][" << RowIndex << "] has invalid file index " << Row.File << " (valid values are [1," << MaxFileIndex << "]):\n"; Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/Object/COFFImportFile.cpp ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/Object/COFFImportFile.cpp Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/Object/COFFImportFile.cpp Mon Aug 21 11:56:47 2017 (r322747) @@ -557,7 +557,7 @@ NewArchiveMember ObjectFactory::createWeakExternal(Str std::error_code writeImportLibrary(StringRef ImportName, StringRef Path, ArrayRef<COFFShortExport> Exports, - MachineTypes Machine) { + MachineTypes Machine, bool MakeWeakAliases) { std::vector<NewArchiveMember> Members; ObjectFactory OF(llvm::sys::path::filename(ImportName), Machine); @@ -575,7 +575,7 @@ std::error_code writeImportLibrary(StringRef ImportNam if (E.Private) continue; - if (E.isWeak()) { + if (E.isWeak() && MakeWeakAliases) { Members.push_back(OF.createWeakExternal(E.Name, E.ExtName, false)); Members.push_back(OF.createWeakExternal(E.Name, E.ExtName, true)); continue; @@ -587,7 +587,7 @@ std::error_code writeImportLibrary(StringRef ImportNam if (E.Constant) ImportType = IMPORT_CONST; - StringRef SymbolName = E.isWeak() ? E.ExtName : E.Name; + StringRef SymbolName = E.SymbolName.empty() ? E.Name : E.SymbolName; ImportNameType NameType = getNameType(SymbolName, E.Name, Machine); Expected<std::string> Name = E.ExtName.empty() ? SymbolName Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp Mon Aug 21 11:56:47 2017 (r322747) @@ -388,6 +388,10 @@ static unsigned isMatchingStore(MachineInstr &LoadInst } static unsigned getPreIndexedOpcode(unsigned Opc) { + // FIXME: We don't currently support creating pre-indexed loads/stores when + // the load or store is the unscaled version. If we decide to perform such an + // optimization in the future the cases for the unscaled loads/stores will + // need to be added here. switch (Opc) { default: llvm_unreachable("Opcode has no pre-indexed equivalent!"); @@ -451,32 +455,42 @@ static unsigned getPostIndexedOpcode(unsigned Opc) { default: llvm_unreachable("Opcode has no post-indexed wise equivalent!"); case AArch64::STRSui: + case AArch64::STURSi: return AArch64::STRSpost; case AArch64::STRDui: + case AArch64::STURDi: return AArch64::STRDpost; case AArch64::STRQui: + case AArch64::STURQi: return AArch64::STRQpost; case AArch64::STRBBui: return AArch64::STRBBpost; case AArch64::STRHHui: return AArch64::STRHHpost; case AArch64::STRWui: + case AArch64::STURWi: return AArch64::STRWpost; case AArch64::STRXui: + case AArch64::STURXi: return AArch64::STRXpost; case AArch64::LDRSui: + case AArch64::LDURSi: return AArch64::LDRSpost; case AArch64::LDRDui: + case AArch64::LDURDi: return AArch64::LDRDpost; case AArch64::LDRQui: + case AArch64::LDURQi: return AArch64::LDRQpost; case AArch64::LDRBBui: return AArch64::LDRBBpost; case AArch64::LDRHHui: return AArch64::LDRHHpost; case AArch64::LDRWui: + case AArch64::LDURWi: return AArch64::LDRWpost; case AArch64::LDRXui: + case AArch64::LDURXi: return AArch64::LDRXpost; case AArch64::LDRSWui: return AArch64::LDRSWpost; @@ -1694,8 +1708,9 @@ bool AArch64LoadStoreOpt::optimizeBlock(MachineBasicBl ++NumPostFolded; break; } - // Don't know how to handle pre/post-index versions, so move to the next - // instruction. + + // Don't know how to handle unscaled pre/post-index versions below, so + // move to the next instruction. if (TII->isUnscaledLdSt(Opc)) { ++MBBI; break; Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp Mon Aug 21 11:56:47 2017 (r322747) @@ -769,8 +769,7 @@ bool ARMExpandPseudo::ExpandCMP_SWAP(MachineBasicBlock MachineInstr &MI = *MBBI; DebugLoc DL = MI.getDebugLoc(); const MachineOperand &Dest = MI.getOperand(0); - unsigned StatusReg = MI.getOperand(1).getReg(); - bool StatusDead = MI.getOperand(1).isDead(); + unsigned TempReg = MI.getOperand(1).getReg(); // Duplicating undef operands into 2 instructions does not guarantee the same // value on both; However undef should be replaced by xzr anyway. assert(!MI.getOperand(2).isUndef() && "cannot handle undef"); @@ -797,23 +796,9 @@ bool ARMExpandPseudo::ExpandCMP_SWAP(MachineBasicBlock } // .Lloadcmp: - // mov wStatus, #0 // ldrex rDest, [rAddr] // cmp rDest, rDesired // bne .Ldone - if (!StatusDead) { - if (IsThumb) { - BuildMI(LoadCmpBB, DL, TII->get(ARM::tMOVi8), StatusReg) - .addDef(ARM::CPSR, RegState::Dead) - .addImm(0) - .add(predOps(ARMCC::AL)); - } else { - BuildMI(LoadCmpBB, DL, TII->get(ARM::MOVi), StatusReg) - .addImm(0) - .add(predOps(ARMCC::AL)) - .add(condCodeOp()); - } - } MachineInstrBuilder MIB; MIB = BuildMI(LoadCmpBB, DL, TII->get(LdrexOp), Dest.getReg()); @@ -836,10 +821,10 @@ bool ARMExpandPseudo::ExpandCMP_SWAP(MachineBasicBlock LoadCmpBB->addSuccessor(StoreBB); // .Lstore: - // strex rStatus, rNew, [rAddr] - // cmp rStatus, #0 + // strex rTempReg, rNew, [rAddr] + // cmp rTempReg, #0 // bne .Lloadcmp - MIB = BuildMI(StoreBB, DL, TII->get(StrexOp), StatusReg) + MIB = BuildMI(StoreBB, DL, TII->get(StrexOp), TempReg) .addReg(NewReg) .addReg(AddrReg); if (StrexOp == ARM::t2STREX) @@ -848,7 +833,7 @@ bool ARMExpandPseudo::ExpandCMP_SWAP(MachineBasicBlock unsigned CMPri = IsThumb ? ARM::t2CMPri : ARM::CMPri; BuildMI(StoreBB, DL, TII->get(CMPri)) - .addReg(StatusReg, getKillRegState(StatusDead)) + .addReg(TempReg, RegState::Kill) .addImm(0) .add(predOps(ARMCC::AL)); BuildMI(StoreBB, DL, TII->get(Bcc)) @@ -904,8 +889,7 @@ bool ARMExpandPseudo::ExpandCMP_SWAP_64(MachineBasicBl MachineInstr &MI = *MBBI; DebugLoc DL = MI.getDebugLoc(); MachineOperand &Dest = MI.getOperand(0); - unsigned StatusReg = MI.getOperand(1).getReg(); - bool StatusDead = MI.getOperand(1).isDead(); + unsigned TempReg = MI.getOperand(1).getReg(); // Duplicating undef operands into 2 instructions does not guarantee the same // value on both; However undef should be replaced by xzr anyway. assert(!MI.getOperand(2).isUndef() && "cannot handle undef"); @@ -931,7 +915,7 @@ bool ARMExpandPseudo::ExpandCMP_SWAP_64(MachineBasicBl // .Lloadcmp: // ldrexd rDestLo, rDestHi, [rAddr] // cmp rDestLo, rDesiredLo - // sbcs rStatus<dead>, rDestHi, rDesiredHi + // sbcs rTempReg<dead>, rDestHi, rDesiredHi // bne .Ldone unsigned LDREXD = IsThumb ? ARM::t2LDREXD : ARM::LDREXD; MachineInstrBuilder MIB; @@ -959,17 +943,17 @@ bool ARMExpandPseudo::ExpandCMP_SWAP_64(MachineBasicBl LoadCmpBB->addSuccessor(StoreBB); // .Lstore: - // strexd rStatus, rNewLo, rNewHi, [rAddr] - // cmp rStatus, #0 + // strexd rTempReg, rNewLo, rNewHi, [rAddr] + // cmp rTempReg, #0 // bne .Lloadcmp unsigned STREXD = IsThumb ? ARM::t2STREXD : ARM::STREXD; - MIB = BuildMI(StoreBB, DL, TII->get(STREXD), StatusReg); + MIB = BuildMI(StoreBB, DL, TII->get(STREXD), TempReg); addExclusiveRegPair(MIB, New, 0, IsThumb, TRI); MIB.addReg(AddrReg).add(predOps(ARMCC::AL)); unsigned CMPri = IsThumb ? ARM::t2CMPri : ARM::CMPri; BuildMI(StoreBB, DL, TII->get(CMPri)) - .addReg(StatusReg, getKillRegState(StatusDead)) + .addReg(TempReg, RegState::Kill) .addImm(0) .add(predOps(ARMCC::AL)); BuildMI(StoreBB, DL, TII->get(Bcc)) Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td Mon Aug 21 11:56:47 2017 (r322747) @@ -6053,21 +6053,21 @@ def SPACE : PseudoInst<(outs GPR:$Rd), (ins i32imm:$si // significantly more naive than the standard expansion: we conservatively // assume seq_cst, strong cmpxchg and omit clrex on failure. -let Constraints = "@earlyclobber $Rd,@earlyclobber $status", +let Constraints = "@earlyclobber $Rd,@earlyclobber $temp", mayLoad = 1, mayStore = 1 in { -def CMP_SWAP_8 : PseudoInst<(outs GPR:$Rd, GPR:$status), +def CMP_SWAP_8 : PseudoInst<(outs GPR:$Rd, GPR:$temp), (ins GPR:$addr, GPR:$desired, GPR:$new), NoItinerary, []>, Sched<[]>; -def CMP_SWAP_16 : PseudoInst<(outs GPR:$Rd, GPR:$status), +def CMP_SWAP_16 : PseudoInst<(outs GPR:$Rd, GPR:$temp), (ins GPR:$addr, GPR:$desired, GPR:$new), NoItinerary, []>, Sched<[]>; -def CMP_SWAP_32 : PseudoInst<(outs GPR:$Rd, GPR:$status), +def CMP_SWAP_32 : PseudoInst<(outs GPR:$Rd, GPR:$temp), (ins GPR:$addr, GPR:$desired, GPR:$new), NoItinerary, []>, Sched<[]>; -def CMP_SWAP_64 : PseudoInst<(outs GPRPair:$Rd, GPR:$status), +def CMP_SWAP_64 : PseudoInst<(outs GPRPair:$Rd, GPR:$temp), (ins GPR:$addr, GPRPair:$desired, GPRPair:$new), NoItinerary, []>, Sched<[]>; } Modified: projects/bsd_rdma_4_9/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp ============================================================================== --- projects/bsd_rdma_4_9/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp Mon Aug 21 11:51:40 2017 (r322746) +++ projects/bsd_rdma_4_9/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp Mon Aug 21 11:56:47 2017 (r322747) @@ -419,6 +419,11 @@ X86TargetLowering::X86TargetLowering(const X86TargetMa setOperationAction(ISD::SELECT, VT, Custom); setOperationAction(ISD::SETCC, VT, Custom); } + + // Custom action for SELECT MMX and expand action for SELECT_CC MMX + setOperationAction(ISD::SELECT, MVT::x86mmx, Custom); + setOperationAction(ISD::SELECT_CC, MVT::x86mmx, Expand); + setOperationAction(ISD::EH_RETURN , MVT::Other, Custom); // NOTE: EH_SJLJ_SETJMP/_LONGJMP supported here is NOT intended to support // SjLj exception handling but a light-weight setjmp/longjmp replacement to @@ -1383,7 +1388,7 @@ X86TargetLowering::X86TargetLowering(const X86TargetMa // (result) is 256-bit but the source is 512-bit wide. // 128-bit was made Custom under AVX1. for (auto VT : { MVT::v32i8, MVT::v16i16, MVT::v8i32, MVT::v4i64, - MVT::v8f32, MVT::v4f64 }) + MVT::v8f32, MVT::v4f64, MVT::v1i1 }) setOperationAction(ISD::EXTRACT_SUBVECTOR, VT, Custom); for (auto VT : { MVT::v2i1, MVT::v4i1, MVT::v8i1, MVT::v16i1, MVT::v32i1, MVT::v64i1 }) @@ -14570,6 +14575,21 @@ static SDValue LowerEXTRACT_SUBVECTOR(SDValue Op, cons unsigned IdxVal = cast<ConstantSDNode>(Idx)->getZExtValue(); MVT ResVT = Op.getSimpleValueType(); + // When v1i1 is legal a scalarization of a vselect with a vXi1 Cond + // would result with: v1i1 = extract_subvector(vXi1, idx). + // Lower these into extract_vector_elt which is already selectable. + if (ResVT == MVT::v1i1) { + assert(Subtarget.hasAVX512() && + "Boolean EXTRACT_SUBVECTOR requires AVX512"); + + MVT EltVT = ResVT.getVectorElementType(); + const TargetLowering &TLI = DAG.getTargetLoweringInfo(); + MVT LegalVT = + (TLI.getTypeToTransformTo(*DAG.getContext(), EltVT)).getSimpleVT(); + SDValue Res = DAG.getNode(ISD::EXTRACT_VECTOR_ELT, dl, LegalVT, In, Idx); + return DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, ResVT, Res); + } + assert((In.getSimpleValueType().is256BitVector() || In.getSimpleValueType().is512BitVector()) && "Can only extract from 256-bit or 512-bit vectors"); @@ -20651,8 +20671,8 @@ static SDValue LowerINTRINSIC_W_CHAIN(SDValue Op, cons } // ADC/ADCX/SBB case ADX: { - SDVTList CFVTs = DAG.getVTList(Op->getValueType(0), MVT::Other); - SDVTList VTs = DAG.getVTList(Op.getOperand(3)->getValueType(0), MVT::Other); + SDVTList CFVTs = DAG.getVTList(Op->getValueType(0), MVT::i32); + SDVTList VTs = DAG.getVTList(Op.getOperand(3)->getValueType(0), MVT::i32); SDValue GenCF = DAG.getNode(X86ISD::ADD, dl, CFVTs, Op.getOperand(2), DAG.getConstant(-1, dl, MVT::i8)); SDValue Res = DAG.getNode(IntrData->Opc0, dl, VTs, Op.getOperand(3), @@ -30663,6 +30683,14 @@ static SDValue combineSelect(SDNode *N, SelectionDAG & *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201708211156.v7LBumFp078895>