From owner-svn-src-projects@freebsd.org Tue May 16 19:54:52 2017 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 776B5D70B33 for ; Tue, 16 May 2017 19:54:52 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3264F7CA; Tue, 16 May 2017 19:54:52 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v4GJspXH001682; Tue, 16 May 2017 19:54:51 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v4GJsmJD001653; Tue, 16 May 2017 19:54:48 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201705161954.v4GJsmJD001653@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Tue, 16 May 2017 19:54:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r318381 - in projects/clang500-import: . bin/dd bin/sh bin/sh/tests/builtins contrib/atf/atf-c/detail contrib/binutils/gas/config contrib/bmake contrib/bmake/mk contrib/bmake/mk/sys con... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 May 2017 19:54:52 -0000 Author: dim Date: Tue May 16 19:54:47 2017 New Revision: 318381 URL: https://svnweb.freebsd.org/changeset/base/318381 Log: Merge ^/head r317971 through r318379. Added: projects/clang500-import/bin/sh/tests/builtins/case21.0 - copied unchanged from r318379, head/bin/sh/tests/builtins/case21.0 projects/clang500-import/bin/sh/tests/builtins/case22.0 - copied unchanged from r318379, head/bin/sh/tests/builtins/case22.0 projects/clang500-import/contrib/bmake/mk/files.mk - copied unchanged from r318379, head/contrib/bmake/mk/files.mk projects/clang500-import/contrib/libxo/libxo/xo_options.7 - copied unchanged from r318379, head/contrib/libxo/libxo/xo_options.7 projects/clang500-import/etc/newsyslog.conf.d/amd.conf - copied unchanged from r318379, head/etc/newsyslog.conf.d/amd.conf projects/clang500-import/etc/newsyslog.conf.d/ftp.conf - copied unchanged from r318379, head/etc/newsyslog.conf.d/ftp.conf projects/clang500-import/etc/newsyslog.conf.d/lpr.conf - copied unchanged from r318379, head/etc/newsyslog.conf.d/lpr.conf projects/clang500-import/etc/newsyslog.conf.d/pf.conf - copied unchanged from r318379, head/etc/newsyslog.conf.d/pf.conf projects/clang500-import/etc/newsyslog.conf.d/ppp.conf - copied unchanged from r318379, head/etc/newsyslog.conf.d/ppp.conf projects/clang500-import/etc/newsyslog.conf.d/sendmail.conf - copied unchanged from r318379, head/etc/newsyslog.conf.d/sendmail.conf projects/clang500-import/etc/syslog.d/ - copied from r318379, head/etc/syslog.d/ projects/clang500-import/lib/libstand/ip.c - copied unchanged from r318379, head/lib/libstand/ip.c projects/clang500-import/lib/libzstd/Makefile.depend - copied unchanged from r318379, head/lib/libzstd/Makefile.depend projects/clang500-import/sbin/decryptcore/Makefile.depend - copied unchanged from r318379, head/sbin/decryptcore/Makefile.depend projects/clang500-import/share/doc/pjdfstest/Makefile.depend - copied unchanged from r318379, head/share/doc/pjdfstest/Makefile.depend projects/clang500-import/sys/dev/acpica/acpi_container.c - copied unchanged from r318379, head/sys/dev/acpica/acpi_container.c projects/clang500-import/sys/dev/hyperv/vmbus/vmbus_res.c - copied unchanged from r318379, head/sys/dev/hyperv/vmbus/vmbus_res.c projects/clang500-import/sys/dev/iwm/if_iwm_constants.h - copied unchanged from r318379, head/sys/dev/iwm/if_iwm_constants.h projects/clang500-import/sys/dev/iwm/if_iwm_sta.c - copied unchanged from r318379, head/sys/dev/iwm/if_iwm_sta.c projects/clang500-import/sys/dev/iwm/if_iwm_sta.h - copied unchanged from r318379, head/sys/dev/iwm/if_iwm_sta.h projects/clang500-import/sys/modules/dtb/mv/ - copied from r318379, head/sys/modules/dtb/mv/ projects/clang500-import/sys/modules/tests/Makefile - copied unchanged from r318379, head/sys/modules/tests/Makefile projects/clang500-import/usr.bin/getaddrinfo/Makefile.depend - copied unchanged from r318379, head/usr.bin/getaddrinfo/Makefile.depend projects/clang500-import/usr.bin/procstat/tests/ - copied from r318379, head/usr.bin/procstat/tests/ projects/clang500-import/usr.bin/zstd/Makefile.depend - copied unchanged from r318379, head/usr.bin/zstd/Makefile.depend projects/clang500-import/usr.sbin/prometheus_sysctl_exporter/Makefile.depend - copied unchanged from r318379, head/usr.sbin/prometheus_sysctl_exporter/Makefile.depend Modified: projects/clang500-import/Makefile.inc1 projects/clang500-import/Makefile.libcompat projects/clang500-import/README projects/clang500-import/bin/dd/Makefile.depend projects/clang500-import/bin/sh/expand.c projects/clang500-import/bin/sh/tests/builtins/Makefile projects/clang500-import/contrib/atf/atf-c/detail/process_test.c projects/clang500-import/contrib/binutils/gas/config/tc-arm.c projects/clang500-import/contrib/bmake/ChangeLog projects/clang500-import/contrib/bmake/Makefile projects/clang500-import/contrib/bmake/main.c projects/clang500-import/contrib/bmake/mk/ChangeLog projects/clang500-import/contrib/bmake/mk/FILES projects/clang500-import/contrib/bmake/mk/dirdeps.mk projects/clang500-import/contrib/bmake/mk/doc.mk projects/clang500-import/contrib/bmake/mk/final.mk projects/clang500-import/contrib/bmake/mk/inc.mk projects/clang500-import/contrib/bmake/mk/init.mk projects/clang500-import/contrib/bmake/mk/install-mk projects/clang500-import/contrib/bmake/mk/lib.mk projects/clang500-import/contrib/bmake/mk/meta2deps.py projects/clang500-import/contrib/bmake/mk/own.mk projects/clang500-import/contrib/bmake/mk/prog.mk projects/clang500-import/contrib/bmake/mk/scripts.mk projects/clang500-import/contrib/bmake/mk/sys/AIX.mk projects/clang500-import/contrib/bmake/mk/sys/Darwin.mk projects/clang500-import/contrib/bmake/mk/sys/Generic.mk projects/clang500-import/contrib/bmake/mk/sys/HP-UX.mk projects/clang500-import/contrib/bmake/mk/sys/IRIX.mk projects/clang500-import/contrib/bmake/mk/sys/Linux.mk projects/clang500-import/contrib/bmake/mk/sys/NetBSD.mk projects/clang500-import/contrib/bmake/mk/sys/OSF1.mk projects/clang500-import/contrib/bmake/mk/sys/OpenBSD.mk projects/clang500-import/contrib/bmake/mk/sys/SunOS.mk projects/clang500-import/contrib/bmake/mk/sys/UnixWare.mk projects/clang500-import/contrib/bmake/parse.c projects/clang500-import/contrib/bmake/str.c projects/clang500-import/contrib/gcc/config/arm/libgcc-bpabi.ver projects/clang500-import/contrib/gcc/config/arm/libunwind-arm.S projects/clang500-import/contrib/gcc/libgcc-std.ver projects/clang500-import/contrib/ipfilter/lib/ipf_perror.c projects/clang500-import/contrib/ipfilter/lib/printhash_live.c projects/clang500-import/contrib/ipfilter/lib/printhashnode.c projects/clang500-import/contrib/ipfilter/lib/printpoolnode.c projects/clang500-import/contrib/ipfilter/tools/ippool.c projects/clang500-import/contrib/libarchive/cpio/test/test_option_lz4.c projects/clang500-import/contrib/libxo/configure.ac projects/clang500-import/contrib/libxo/doc/Makefile.am projects/clang500-import/contrib/libxo/doc/libxo-manual.html projects/clang500-import/contrib/libxo/doc/libxo.txt projects/clang500-import/contrib/libxo/libxo/Makefile.am projects/clang500-import/contrib/libxo/libxo/libxo.c projects/clang500-import/contrib/libxo/libxo/xo.h projects/clang500-import/contrib/libxo/libxo/xo_buf.h projects/clang500-import/contrib/libxo/libxo/xo_encoder.c projects/clang500-import/contrib/libxo/libxo/xo_format.5 projects/clang500-import/contrib/libxo/libxo/xo_syslog.c projects/clang500-import/contrib/libxo/tests/core/saved/test_01.E.out projects/clang500-import/contrib/libxo/tests/core/saved/test_01.J.out projects/clang500-import/contrib/libxo/tests/core/saved/test_01.JP.out projects/clang500-import/contrib/libxo/tests/core/saved/test_01.X.out projects/clang500-import/contrib/libxo/tests/core/saved/test_01.XP.out projects/clang500-import/contrib/libxo/tests/core/saved/test_10.X.out projects/clang500-import/contrib/libxo/tests/core/saved/test_10.XP.out projects/clang500-import/contrib/libxo/tests/core/saved/test_11.X.out projects/clang500-import/contrib/libxo/tests/core/saved/test_11.XP.out projects/clang500-import/contrib/libxo/tests/core/test_01.c projects/clang500-import/contrib/libxo/tests/gettext/saved/gt_01.J.out projects/clang500-import/contrib/libxo/tests/gettext/saved/gt_01.JP.out projects/clang500-import/contrib/libxo/xo/xo.c projects/clang500-import/contrib/netbsd-tests/lib/libc/gen/t_realpath.c projects/clang500-import/contrib/netbsd-tests/lib/libc/ssp/t_ssp.sh projects/clang500-import/contrib/netbsd-tests/lib/libc/sys/t_wait.c projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh projects/clang500-import/crypto/openssh/auth-pam.c projects/clang500-import/crypto/openssh/auth.c projects/clang500-import/crypto/openssh/auth1.c projects/clang500-import/crypto/openssh/auth2.c projects/clang500-import/crypto/openssh/blacklist.c projects/clang500-import/crypto/openssh/blacklist_client.h projects/clang500-import/crypto/openssh/packet.c projects/clang500-import/crypto/openssh/sshd.c projects/clang500-import/etc/Makefile projects/clang500-import/etc/mtree/BSD.tests.dist projects/clang500-import/etc/newsyslog.conf projects/clang500-import/etc/newsyslog.conf.d/Makefile projects/clang500-import/etc/syslog.conf projects/clang500-import/lib/libbsnmp/libbsnmp/Makefile.depend projects/clang500-import/lib/libc/gen/getusershell.c projects/clang500-import/lib/libc/stdlib/realpath.c projects/clang500-import/lib/libc/sys/open.2 projects/clang500-import/lib/libmt/mtlib.c projects/clang500-import/lib/libstand/Makefile projects/clang500-import/lib/libstand/net.h projects/clang500-import/lib/libstand/nfs.c projects/clang500-import/lib/libstand/rarp.c projects/clang500-import/lib/libstand/udp.c projects/clang500-import/lib/libsysdecode/Makefile.depend projects/clang500-import/lib/libthr/thread/thr_mutex.c projects/clang500-import/lib/libxo/Makefile projects/clang500-import/lib/libxo/add.man projects/clang500-import/lib/libxo/xo_config.h projects/clang500-import/lib/msun/src/catrig.c projects/clang500-import/lib/msun/src/catrigf.c projects/clang500-import/lib/msun/src/catrigl.c projects/clang500-import/libexec/dma/dma-mbox-create/Makefile.depend projects/clang500-import/libexec/rtld-elf/map_object.c projects/clang500-import/libexec/rtld-elf/rtld.c projects/clang500-import/release/scripts/atlas-upload.sh projects/clang500-import/rescue/rescue/Makefile.depend projects/clang500-import/sbin/dumpon/Makefile.depend projects/clang500-import/sbin/hastctl/Makefile.depend projects/clang500-import/sbin/hastd/Makefile.depend projects/clang500-import/sbin/ifconfig/af_link.c projects/clang500-import/sbin/newfs_msdos/mkfs_msdos.c projects/clang500-import/sbin/newfs_msdos/mkfs_msdos.h projects/clang500-import/sbin/newfs_msdos/newfs_msdos.8 projects/clang500-import/sbin/newfs_msdos/newfs_msdos.c projects/clang500-import/secure/lib/libssh/Makefile projects/clang500-import/share/man/man4/Makefile projects/clang500-import/share/man/man4/bnxt.4 projects/clang500-import/share/man/man4/bytgpio.4 projects/clang500-import/share/man/man4/cxgbev.4 projects/clang500-import/share/man/man4/jedec_ts.4 projects/clang500-import/share/man/man4/qlnxe.4 projects/clang500-import/share/man/man4/u3g.4 projects/clang500-import/share/man/man4/uark.4 projects/clang500-import/share/man/man4/uart.4 projects/clang500-import/share/man/man4/ubsa.4 projects/clang500-import/share/man/man4/ubser.4 projects/clang500-import/share/man/man4/uchcom.4 projects/clang500-import/share/man/man4/ucom.4 projects/clang500-import/share/man/man4/ucycom.4 projects/clang500-import/share/man/man4/uftdi.4 projects/clang500-import/share/man/man4/uipaq.4 projects/clang500-import/share/man/man4/umcs.4 projects/clang500-import/share/man/man4/umct.4 projects/clang500-import/share/man/man4/umodem.4 projects/clang500-import/share/man/man4/umoscom.4 projects/clang500-import/share/man/man4/uplcom.4 projects/clang500-import/share/man/man4/uslcom.4 projects/clang500-import/share/man/man4/uvisor.4 projects/clang500-import/share/man/man4/uvscom.4 projects/clang500-import/share/man/man7/build.7 projects/clang500-import/share/mk/bsd.progs.mk projects/clang500-import/share/mk/local.meta.sys.mk projects/clang500-import/share/mk/meta2deps.py projects/clang500-import/sys/amd64/acpica/acpi_wakecode.S projects/clang500-import/sys/amd64/amd64/cpu_switch.S projects/clang500-import/sys/amd64/amd64/pmap.c projects/clang500-import/sys/arm/arm/busdma_machdep-v4.c projects/clang500-import/sys/arm/arm/busdma_machdep-v6.c projects/clang500-import/sys/arm/arm/pmap-v6.c projects/clang500-import/sys/arm/conf/ARMADA38X projects/clang500-import/sys/arm/include/pmap-v6.h projects/clang500-import/sys/arm/mv/armada38x/files.armada38x projects/clang500-import/sys/arm/mv/mv_common.c projects/clang500-import/sys/arm/mv/mvwin.h projects/clang500-import/sys/arm64/arm64/busdma_bounce.c projects/clang500-import/sys/arm64/include/armreg.h projects/clang500-import/sys/arm64/include/vm.h projects/clang500-import/sys/boot/efi/loader/main.c projects/clang500-import/sys/boot/i386/loader/Makefile.depend projects/clang500-import/sys/boot/i386/pxeldr/pxeboot.8 projects/clang500-import/sys/boot/i386/zfsloader/Makefile.depend projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c projects/clang500-import/sys/cddl/dev/dtrace/powerpc/dtrace_isa.c projects/clang500-import/sys/cddl/dev/fbt/powerpc/fbt_isa.c projects/clang500-import/sys/cddl/dev/profile/profile.c projects/clang500-import/sys/compat/linuxkpi/common/src/linux_rcu.c projects/clang500-import/sys/conf/files projects/clang500-import/sys/conf/files.amd64 projects/clang500-import/sys/conf/files.i386 projects/clang500-import/sys/conf/kern.opts.mk projects/clang500-import/sys/conf/kern.post.mk projects/clang500-import/sys/conf/kern.pre.mk projects/clang500-import/sys/dev/acpica/acpi_pcib_acpi.c projects/clang500-import/sys/dev/bnxt/if_bnxt.c projects/clang500-import/sys/dev/cxgbe/adapter.h projects/clang500-import/sys/dev/cxgbe/t4_main.c projects/clang500-import/sys/dev/cxgbe/t4_sge.c projects/clang500-import/sys/dev/dpaa/if_dtsec_rm.c projects/clang500-import/sys/dev/e1000/e1000_ich8lan.c projects/clang500-import/sys/dev/hyperv/vmbus/vmbus.c projects/clang500-import/sys/dev/iwm/if_iwm.c projects/clang500-import/sys/dev/iwm/if_iwm_7000.c projects/clang500-import/sys/dev/iwm/if_iwm_8000.c projects/clang500-import/sys/dev/iwm/if_iwm_binding.c projects/clang500-import/sys/dev/iwm/if_iwm_binding.h projects/clang500-import/sys/dev/iwm/if_iwm_fw.c projects/clang500-import/sys/dev/iwm/if_iwm_led.c projects/clang500-import/sys/dev/iwm/if_iwm_mac_ctxt.c projects/clang500-import/sys/dev/iwm/if_iwm_mac_ctxt.h projects/clang500-import/sys/dev/iwm/if_iwm_notif_wait.c projects/clang500-import/sys/dev/iwm/if_iwm_pcie_trans.c projects/clang500-import/sys/dev/iwm/if_iwm_phy_ctxt.c projects/clang500-import/sys/dev/iwm/if_iwm_phy_db.c projects/clang500-import/sys/dev/iwm/if_iwm_power.c projects/clang500-import/sys/dev/iwm/if_iwm_power.h projects/clang500-import/sys/dev/iwm/if_iwm_scan.c projects/clang500-import/sys/dev/iwm/if_iwm_time_event.c projects/clang500-import/sys/dev/iwm/if_iwm_time_event.h projects/clang500-import/sys/dev/iwm/if_iwm_util.c projects/clang500-import/sys/dev/iwm/if_iwm_util.h projects/clang500-import/sys/dev/iwm/if_iwmreg.h projects/clang500-import/sys/dev/iwm/if_iwmvar.h projects/clang500-import/sys/dev/mpr/mpr_sas.c projects/clang500-import/sys/dev/mps/mps_sas.c projects/clang500-import/sys/dev/qlnx/qlnxe/ecore_dev.c projects/clang500-import/sys/dev/qlxgbe/ql_isr.c projects/clang500-import/sys/dev/qlxgbe/ql_os.c projects/clang500-import/sys/dev/sdhci/sdhci.c projects/clang500-import/sys/dev/sdhci/sdhci.h projects/clang500-import/sys/dev/sdhci/sdhci_acpi.c projects/clang500-import/sys/dev/sdhci/sdhci_fdt.c projects/clang500-import/sys/dev/sdhci/sdhci_pci.c projects/clang500-import/sys/dev/usb/controller/xhci_pci.c projects/clang500-import/sys/dev/vt/vt_core.c projects/clang500-import/sys/fs/nfsclient/nfs_clcomsubs.c projects/clang500-import/sys/kern/kern_sig.c projects/clang500-import/sys/kern/subr_kobj.c projects/clang500-import/sys/kern/vfs_subr.c projects/clang500-import/sys/mips/include/cpuinfo.h projects/clang500-import/sys/mips/include/frame.h projects/clang500-import/sys/mips/include/md_var.h projects/clang500-import/sys/mips/include/regnum.h projects/clang500-import/sys/mips/mips/busdma_machdep.c projects/clang500-import/sys/mips/mips/cpu.c projects/clang500-import/sys/mips/mips/pm_machdep.c projects/clang500-import/sys/mips/mips/swtch.S projects/clang500-import/sys/modules/Makefile projects/clang500-import/sys/modules/hyperv/vmbus/Makefile projects/clang500-import/sys/modules/iwm/Makefile projects/clang500-import/sys/modules/mmcsd/Makefile projects/clang500-import/sys/net/ieee8023ad_lacp.c projects/clang500-import/sys/net/if.c projects/clang500-import/sys/net/if_ethersubr.c projects/clang500-import/sys/net/if_media.h projects/clang500-import/sys/net/if_var.h projects/clang500-import/sys/net/iflib.c projects/clang500-import/sys/netinet/in_mcast.c projects/clang500-import/sys/netinet/in_pcb.c projects/clang500-import/sys/netinet/in_pcb.h projects/clang500-import/sys/netinet/ip_divert.c projects/clang500-import/sys/netinet/libalias/alias.c projects/clang500-import/sys/netinet/raw_ip.c projects/clang500-import/sys/netinet/tcp_reass.c projects/clang500-import/sys/netinet/tcp_subr.c projects/clang500-import/sys/netinet/udp_usrreq.c projects/clang500-import/sys/netinet6/in6_mcast.c projects/clang500-import/sys/netinet6/ip6_output.c projects/clang500-import/sys/opencrypto/criov.c projects/clang500-import/sys/opencrypto/cryptodev.h projects/clang500-import/sys/powerpc/booke/trap_subr.S projects/clang500-import/sys/powerpc/include/pmap.h projects/clang500-import/sys/powerpc/powerpc/bus_machdep.c projects/clang500-import/sys/powerpc/powerpc/pmap_dispatch.c projects/clang500-import/sys/sys/kobj.h projects/clang500-import/sys/sys/proc.h projects/clang500-import/sys/sys/sockio.h projects/clang500-import/sys/tests/callout_test/callout_test.c projects/clang500-import/sys/tests/framework/kern_testfrwk.c projects/clang500-import/sys/x86/acpica/acpi_wakeup.c projects/clang500-import/sys/x86/x86/busdma_bounce.c projects/clang500-import/targets/pseudo/clang/Makefile.depend projects/clang500-import/targets/pseudo/userland/Makefile.depend projects/clang500-import/targets/pseudo/userland/share/Makefile.depend projects/clang500-import/tests/sys/aio/aio_test.c projects/clang500-import/tests/sys/aio/local.h projects/clang500-import/tests/sys/kern/ptrace_test.c projects/clang500-import/tools/build/mk/OptionalObsoleteFiles.inc projects/clang500-import/tools/build/options/makeman projects/clang500-import/usr.bin/bmake/Makefile projects/clang500-import/usr.bin/fold/Makefile.depend projects/clang500-import/usr.bin/getconf/fake-gperf.awk projects/clang500-import/usr.bin/grep/Makefile.depend projects/clang500-import/usr.bin/grep/grep.c projects/clang500-import/usr.bin/grep/grep.h projects/clang500-import/usr.bin/grep/queue.c projects/clang500-import/usr.bin/grep/util.c projects/clang500-import/usr.bin/hexdump/Makefile.depend projects/clang500-import/usr.bin/iconv/Makefile.depend projects/clang500-import/usr.bin/ident/Makefile.depend projects/clang500-import/usr.bin/ktrdump/Makefile.depend projects/clang500-import/usr.bin/lam/Makefile.depend projects/clang500-import/usr.bin/last/Makefile.depend projects/clang500-import/usr.bin/localedef/localedef.c projects/clang500-import/usr.bin/localedef/localedef.h projects/clang500-import/usr.bin/localedef/wide.c projects/clang500-import/usr.bin/ministat/Makefile.depend projects/clang500-import/usr.bin/mkimg/mkimg.1 projects/clang500-import/usr.bin/mkimg/mkimg.c projects/clang500-import/usr.bin/mkuzip/mkuzip.c projects/clang500-import/usr.bin/mt/mt.1 projects/clang500-import/usr.bin/pom/Makefile.depend projects/clang500-import/usr.bin/procstat/Makefile projects/clang500-import/usr.bin/procstat/procstat.1 projects/clang500-import/usr.bin/resizewin/resizewin.1 projects/clang500-import/usr.bin/uniq/uniq.1 projects/clang500-import/usr.bin/uniq/uniq.c projects/clang500-import/usr.bin/xo/Makefile projects/clang500-import/usr.sbin/amd/amq/Makefile.depend projects/clang500-import/usr.sbin/amd/fixmount/Makefile.depend projects/clang500-import/usr.sbin/amd/fsinfo/Makefile.depend projects/clang500-import/usr.sbin/amd/hlfsd/Makefile.depend projects/clang500-import/usr.sbin/amd/libamu/Makefile.depend projects/clang500-import/usr.sbin/amd/mk-amd-map/Makefile.depend projects/clang500-import/usr.sbin/amd/pawd/Makefile.depend projects/clang500-import/usr.sbin/amd/wire-test/Makefile.depend projects/clang500-import/usr.sbin/arp/Makefile.depend projects/clang500-import/usr.sbin/bhyve/Makefile.depend projects/clang500-import/usr.sbin/bsnmpd/tools/libbsnmptools/Makefile.depend projects/clang500-import/usr.sbin/mountd/mountd.c projects/clang500-import/usr.sbin/pw/pw_user.c projects/clang500-import/usr.sbin/rpc.statd/Makefile.depend projects/clang500-import/usr.sbin/traceroute/Makefile.depend Directory Properties: projects/clang500-import/ (props changed) projects/clang500-import/contrib/atf/ (props changed) projects/clang500-import/contrib/binutils/ (props changed) projects/clang500-import/contrib/bmake/ (props changed) projects/clang500-import/contrib/gcc/ (props changed) projects/clang500-import/contrib/ipfilter/ (props changed) projects/clang500-import/contrib/libarchive/ (props changed) projects/clang500-import/contrib/libxo/ (props changed) projects/clang500-import/contrib/netbsd-tests/ (props changed) projects/clang500-import/crypto/openssh/ (props changed) projects/clang500-import/sys/cddl/contrib/opensolaris/ (props changed) Modified: projects/clang500-import/Makefile.inc1 ============================================================================== --- projects/clang500-import/Makefile.inc1 Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/Makefile.inc1 Tue May 16 19:54:47 2017 (r318381) @@ -302,6 +302,11 @@ CLEANDIR= clean cleandepend CLEANDIR= cleandir .endif +.if defined(WORLDFAST) +NO_CLEAN= t +NO_OBJ= t +.endif + .if ${MK_META_MODE} == "yes" # If filemon is used then we can rely on the build being incremental-safe. # The .meta files will also track the build command and rebuild should @@ -310,6 +315,13 @@ CLEANDIR= cleandir NO_CLEAN= t .endif .endif +.if defined(NO_OBJ) || ${MK_AUTO_OBJ} == "yes" +NO_OBJ= t +NO_KERNELOBJ= t +.endif +.if !defined(NO_OBJ) +_obj= obj +.endif LOCAL_TOOL_DIRS?= PACKAGEDIR?= ${DESTDIR}/${DISTDIR} @@ -824,13 +836,22 @@ everything: .PHONY ${_+_}cd ${.CURDIR}; _PARALLEL_SUBDIR_OK=1 ${WMAKE} all WMAKE_TGTS= +.if !defined(WORLDFAST) WMAKE_TGTS+= _worldtmp _legacy .if empty(SUBDIR_OVERRIDE) WMAKE_TGTS+= _bootstrap-tools .endif -WMAKE_TGTS+= _cleanobj _obj _build-tools _cross-tools +WMAKE_TGTS+= _cleanobj +.if !defined(NO_OBJ) +WMAKE_TGTS+= _obj +.endif +WMAKE_TGTS+= _build-tools _cross-tools WMAKE_TGTS+= _compiler-metadata -WMAKE_TGTS+= _includes _libraries +WMAKE_TGTS+= _includes +.endif +.if !defined(NO_LIBS) +WMAKE_TGTS+= _libraries +.endif WMAKE_TGTS+= everything .if defined(LIBCOMPAT) && empty(SUBDIR_OVERRIDE) WMAKE_TGTS+= build${libcompat} @@ -1610,7 +1631,7 @@ legacy: .PHONY .for _tool in tools/build ${_elftoolchain_libs} ${_+_}@${ECHODIR} "===> ${_tool} (obj,includes,all,install)"; \ cd ${.CURDIR}/${_tool}; \ - ${MAKE} DIRPRFX=${_tool}/ obj; \ + if [ -z "${NO_OBJ}" ]; then ${MAKE} DIRPRFX=${_tool}/ obj; fi; \ ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy includes; \ ${MAKE} DIRPRFX=${_tool}/ MK_INCLUDES=no all; \ ${MAKE} DIRPRFX=${_tool}/ MK_INCLUDES=no \ @@ -1766,7 +1787,7 @@ bootstrap-tools: .PHONY ${_bt}-${_tool}: .PHONY .MAKE ${_+_}@${ECHODIR} "===> ${_tool} (obj,all,install)"; \ cd ${.CURDIR}/${_tool}; \ - ${MAKE} DIRPRFX=${_tool}/ obj; \ + if [ -z "${NO_OBJ}" ]; then ${MAKE} DIRPRFX=${_tool}/ obj; fi; \ ${MAKE} DIRPRFX=${_tool}/ all; \ ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX}/legacy install @@ -1805,7 +1826,7 @@ _rescue=rescue/rescue build-tools_${_tool}: .PHONY ${_+_}@${ECHODIR} "===> ${_tool} (obj,build-tools)"; \ cd ${.CURDIR}/${_tool}; \ - ${MAKE} DIRPRFX=${_tool}/ obj; \ + if [ -z "${NO_OBJ}" ]; then ${MAKE} DIRPRFX=${_tool}/ obj; fi; \ ${MAKE} DIRPRFX=${_tool}/ build-tools build-tools: build-tools_${_tool} .endfor @@ -1814,7 +1835,7 @@ build-tools: build-tools_${_tool} build-tools_${_tool}: .PHONY ${_+_}@${ECHODIR} "===> ${_tool} (obj,all)"; \ cd ${.CURDIR}/${_tool}; \ - ${MAKE} DIRPRFX=${_tool}/ obj; \ + if [ -z "${NO_OBJ}" ]; then ${MAKE} DIRPRFX=${_tool}/ obj; fi; \ ${MAKE} DIRPRFX=${_tool}/ all build-tools: build-tools_${_tool} .endfor @@ -1899,7 +1920,7 @@ cross-tools: .MAKE .PHONY ${_usb_tools} ${_+_}@${ECHODIR} "===> ${_tool} (obj,all,install)"; \ cd ${.CURDIR}/${_tool}; \ - ${MAKE} DIRPRFX=${_tool}/ obj; \ + if [ -z "${NO_OBJ}" ]; then ${MAKE} DIRPRFX=${_tool}/ obj; fi; \ ${MAKE} DIRPRFX=${_tool}/ all; \ ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX} install .endfor @@ -1931,7 +1952,7 @@ native-xtools: .PHONY mkdir -p ${OBJTREE}/gperf_for_gcc/usr/bin ${_+_}@${ECHODIR} "===> ${_gperf} (obj,all,install)"; \ cd ${.CURDIR}/${_gperf}; \ - ${NXBMAKE} DIRPRFX=${_gperf}/ obj; \ + if [ -z "${NO_OBJ}" ]; then ${NXBMAKE} DIRPRFX=${_gperf}/ obj; fi; \ ${NXBMAKE} DIRPRFX=${_gperf}/ all; \ ${NXBMAKE} DIRPRFX=${_gperf}/ DESTDIR=${OBJTREE}/gperf_for_gcc install .endif @@ -2007,7 +2028,7 @@ native-xtools: .PHONY usr.sbin/chown ${_+_}@${ECHODIR} "===> ${_tool} (obj,all,install)"; \ cd ${.CURDIR}/${_tool}; \ - ${NXBMAKE} DIRPRFX=${_tool}/ obj; \ + if [ -z "${NO_OBJ}" ]; then ${NXBMAKE} DIRPRFX=${_tool}/ obj; fi; \ ${NXBMAKE} DIRPRFX=${_tool}/ all; \ ${NXBMAKE} DIRPRFX=${_tool}/ DESTDIR=${NXBDESTDIR} install .endfor @@ -2269,7 +2290,7 @@ ${_lib}__PL: .PHONY .MAKE .if exists(${.CURDIR}/${_lib}) ${_+_}@${ECHODIR} "===> ${_lib} (obj,all,install)"; \ cd ${.CURDIR}/${_lib}; \ - ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ obj; \ + if [ -z "${NO_OBJ}" ]; then ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ obj; fi; \ ${MAKE} MK_TESTS=no MK_PROFILE=no -DNO_PIC \ DIRPRFX=${_lib}/ all; \ ${MAKE} MK_TESTS=no MK_PROFILE=no -DNO_PIC \ @@ -2282,7 +2303,7 @@ ${_lib}__L: .PHONY .MAKE .if exists(${.CURDIR}/${_lib}) ${_+_}@${ECHODIR} "===> ${_lib} (obj,all,install)"; \ cd ${.CURDIR}/${_lib}; \ - ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ obj; \ + if [ -z "${NO_OBJ}" ]; then ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ obj; fi; \ ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ all; \ ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ install .endif @@ -2609,7 +2630,7 @@ _xb-bootstrap-tools: .PHONY ${_yacc} ${_+_}@${ECHODIR} "===> ${_tool} (obj,all,install)"; \ cd ${.CURDIR}/${_tool}; \ - ${CDMAKE} DIRPRFX=${_tool}/ obj; \ + if [ -z "${NO_OBJ}" ]; then ${CDMAKE} DIRPRFX=${_tool}/ obj; fi; \ ${CDMAKE} DIRPRFX=${_tool}/ all; \ ${CDMAKE} DIRPRFX=${_tool}/ DESTDIR=${CDTMP} install .endfor @@ -2628,7 +2649,7 @@ _xb-cross-tools: .PHONY ${_gcc} ${_+_}@${ECHODIR} "===> xdev ${_tool} (obj,all)"; \ cd ${.CURDIR}/${_tool}; \ - ${CDMAKE} DIRPRFX=${_tool}/ obj; \ + if [ -z "${NO_OBJ}" ]; then ${CDMAKE} DIRPRFX=${_tool}/ obj; fi; \ ${CDMAKE} DIRPRFX=${_tool}/ all .endfor Modified: projects/clang500-import/Makefile.libcompat ============================================================================== --- projects/clang500-import/Makefile.libcompat Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/Makefile.libcompat Tue May 16 19:54:47 2017 (r318381) @@ -163,7 +163,7 @@ build${libcompat}: .PHONY .endif mkdir -p ${WORLDTMP} ln -sf ${.CURDIR}/sys ${WORLDTMP} -.for _t in obj includes +.for _t in ${_obj} includes .for _dir in ${_LC_INCDIRS} ${_+_}cd ${.CURDIR}/${_dir}; ${LIBCOMPATWMAKE} MK_INCLUDES=yes \ DIRPRFX=${_dir}/ ${_t} @@ -180,7 +180,7 @@ build${libcompat}: .PHONY ${_+_}cd ${.CURDIR}; \ ${LIBCOMPATWMAKE} -f Makefile.inc1 -DNO_FSCHG libraries .if ${libcompat} == "32" -.for _t in obj all +.for _t in ${_obj} all ${_+_}cd ${.CURDIR}/libexec/rtld-elf; PROG=ld-elf32.so.1 ${LIBCOMPATWMAKE} \ -DNO_FSCHG DIRPRFX=libexec/rtld-elf/ ${_t} ${_+_}cd ${.CURDIR}/usr.bin/ldd; PROG=ldd32 ${LIBCOMPATWMAKE} \ Modified: projects/clang500-import/README ============================================================================== --- projects/clang500-import/README Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/README Tue May 16 19:54:47 2017 (r318381) @@ -81,4 +81,4 @@ usr.sbin System administration commands. For information on synchronizing your source tree with one or more of the FreeBSD Project's development branches, please see: - http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/synching.html + https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/updating-src.html Modified: projects/clang500-import/bin/dd/Makefile.depend ============================================================================== --- projects/clang500-import/bin/dd/Makefile.depend Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/bin/dd/Makefile.depend Tue May 16 19:54:47 2017 (r318381) @@ -8,6 +8,7 @@ DIRDEPS = \ include/xlocale \ lib/${CSU_DIR} \ lib/libc \ + lib/libcapsicum \ lib/libcompiler_rt \ Modified: projects/clang500-import/bin/sh/expand.c ============================================================================== --- projects/clang500-import/bin/sh/expand.c Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/bin/sh/expand.c Tue May 16 19:54:47 2017 (r318381) @@ -440,8 +440,15 @@ expari(const char *p, struct nodelist ** fmtstr(expdest, DIGITS(result), ARITH_FORMAT_STR, result); adj = strlen(expdest); STADJUST(adj, expdest); - if (!quoted) - reprocess(expdest - adj - stackblock(), flag, VSNORMAL, 0, dst); + /* + * If this is quoted, a '-' must not indicate a range in [...]. + * If this is not quoted, splitting may occur. + */ + if (quoted ? + result < 0 && begoff > 1 && flag & (EXP_GLOB | EXP_CASE) : + flag & EXP_SPLIT) + reprocess(expdest - adj - stackblock(), flag, VSNORMAL, quoted, + dst); return p; } Modified: projects/clang500-import/bin/sh/tests/builtins/Makefile ============================================================================== --- projects/clang500-import/bin/sh/tests/builtins/Makefile Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/bin/sh/tests/builtins/Makefile Tue May 16 19:54:47 2017 (r318381) @@ -40,6 +40,8 @@ ${PACKAGE}FILES+= case17.0 ${PACKAGE}FILES+= case18.0 ${PACKAGE}FILES+= case19.0 ${PACKAGE}FILES+= case20.0 +${PACKAGE}FILES+= case21.0 +${PACKAGE}FILES+= case22.0 ${PACKAGE}FILES+= cd1.0 ${PACKAGE}FILES+= cd2.0 ${PACKAGE}FILES+= cd3.0 Copied: projects/clang500-import/bin/sh/tests/builtins/case21.0 (from r318379, head/bin/sh/tests/builtins/case21.0) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/bin/sh/tests/builtins/case21.0 Tue May 16 19:54:47 2017 (r318381, copy of r318379, head/bin/sh/tests/builtins/case21.0) @@ -0,0 +1,10 @@ +# $FreeBSD$ + +case 5 in +[0$((-9))]) ;; +*) echo bad1 ;; +esac + +case - in +[0$((-9))]) echo bad2 ;; +esac Copied: projects/clang500-import/bin/sh/tests/builtins/case22.0 (from r318379, head/bin/sh/tests/builtins/case22.0) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/bin/sh/tests/builtins/case22.0 Tue May 16 19:54:47 2017 (r318381, copy of r318379, head/bin/sh/tests/builtins/case22.0) @@ -0,0 +1,10 @@ +# $FreeBSD$ + +case 5 in +[0"$((-9))"]) echo bad1 ;; +esac + +case - in +[0"$((-9))"]) ;; +*) echo bad2 ;; +esac Modified: projects/clang500-import/contrib/atf/atf-c/detail/process_test.c ============================================================================== --- projects/clang500-import/contrib/atf/atf-c/detail/process_test.c Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/atf/atf-c/detail/process_test.c Tue May 16 19:54:47 2017 (r318381) @@ -26,6 +26,9 @@ #include "atf-c/detail/process.h" #include +#ifdef __FreeBSD__ +#include +#endif #include #include #include @@ -667,6 +670,14 @@ ATF_TC_BODY(status_coredump, tc) atf_tc_skip("Cannot unlimit the core file size; check limits " "manually"); +#ifdef __FreeBSD__ + int coredump_enabled; + size_t ce_len = sizeof(coredump_enabled); + if (sysctlbyname("kern.coredump", &coredump_enabled, &ce_len, NULL, + 0) == 0 && !coredump_enabled) + atf_tc_skip("Coredumps disabled"); +#endif + const int rawstatus = fork_and_wait_child(child_sigquit); atf_process_status_t s; RE(atf_process_status_init(&s, rawstatus)); Modified: projects/clang500-import/contrib/binutils/gas/config/tc-arm.c ============================================================================== --- projects/clang500-import/contrib/binutils/gas/config/tc-arm.c Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/binutils/gas/config/tc-arm.c Tue May 16 19:54:47 2017 (r318381) @@ -5211,12 +5211,6 @@ parse_neon_mov (char **str, int *which_o inst.operands[i].present = 1; } } - else if (parse_qfloat_immediate (&ptr, &inst.operands[i].imm) == SUCCESS) - /* Case 2: VMOV.
, # - Case 3: VMOV.
, # - Case 10: VMOV.F32 , # - Case 11: VMOV.F64
, # */ - inst.operands[i].immisfloat = 1; else if ((val = arm_typed_reg_parse (&ptr, REG_TYPE_NSDQ, &rtype, &optype)) != FAIL) { @@ -5253,9 +5247,15 @@ parse_neon_mov (char **str, int *which_o inst.operands[i].reg = val; inst.operands[i].isreg = 1; - inst.operands[i++].present = 1; + inst.operands[i].present = 1; } } + else if (parse_qfloat_immediate (&ptr, &inst.operands[i].imm) == SUCCESS) + /* Case 2: VMOV.
, # + Case 3: VMOV.
, # + Case 10: VMOV.F32 , # + Case 11: VMOV.F64
, # */ + inst.operands[i].immisfloat = 1; else if (parse_big_immediate (&ptr, i) == SUCCESS) /* Case 2: VMOV.
, # Case 3: VMOV.
, # */ @@ -5337,7 +5337,7 @@ parse_neon_mov (char **str, int *which_o inst.operands[i].isvec = 1; inst.operands[i].issingle = 1; inst.operands[i].vectype = optype; - inst.operands[i++].present = 1; + inst.operands[i].present = 1; } } else Modified: projects/clang500-import/contrib/bmake/ChangeLog ============================================================================== --- projects/clang500-import/contrib/bmake/ChangeLog Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/ChangeLog Tue May 16 19:54:47 2017 (r318381) @@ -1,3 +1,29 @@ +2017-05-10 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170510 + Merge with NetBSD make, pick up + o main.c: Main_SetObjdir: ensure buf2 is in scope + +2017-05-08 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170505 + see mk/ChangeLog + +2017-05-05 Simon J. Gerraty + + * parse.c: not everyone has stdint.h + +2017-05-01 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170501 + see mk/ChangeLog + +2017-04-21 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170421 + Merge with NetBSD make, pick up + o str.c: Str_Match: fix closure tests for [^] and add unit-test. + 2017-04-20 Simon J. Gerraty * Makefile (_MAKE_VERSION): 20170420 Modified: projects/clang500-import/contrib/bmake/Makefile ============================================================================== --- projects/clang500-import/contrib/bmake/Makefile Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/Makefile Tue May 16 19:54:47 2017 (r318381) @@ -1,7 +1,7 @@ -# $Id: Makefile,v 1.88 2017/04/20 14:51:14 sjg Exp $ +# $Id: Makefile,v 1.92 2017/05/10 22:29:04 sjg Exp $ # Base version on src date -_MAKE_VERSION= 20170420 +_MAKE_VERSION= 20170510 PROG= bmake Modified: projects/clang500-import/contrib/bmake/main.c ============================================================================== --- projects/clang500-import/contrib/bmake/main.c Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/main.c Tue May 16 19:54:47 2017 (r318381) @@ -1,4 +1,4 @@ -/* $NetBSD: main.c,v 1.264 2017/04/20 03:57:27 sjg Exp $ */ +/* $NetBSD: main.c,v 1.265 2017/05/10 22:26:14 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -69,7 +69,7 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: main.c,v 1.264 2017/04/20 03:57:27 sjg Exp $"; +static char rcsid[] = "$NetBSD: main.c,v 1.265 2017/05/10 22:26:14 sjg Exp $"; #else #include #ifndef lint @@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 19 #if 0 static char sccsid[] = "@(#)main.c 8.3 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: main.c,v 1.264 2017/04/20 03:57:27 sjg Exp $"); +__RCSID("$NetBSD: main.c,v 1.265 2017/05/10 22:26:14 sjg Exp $"); #endif #endif /* not lint */ #endif @@ -751,6 +751,7 @@ Main_SetObjdir(const char *fmt, ...) struct stat sb; char *path; char buf[MAXPATHLEN + 1]; + char buf2[MAXPATHLEN + 1]; Boolean rc = FALSE; va_list ap; @@ -759,8 +760,6 @@ Main_SetObjdir(const char *fmt, ...) va_end(ap); if (path[0] != '/') { - char buf2[MAXPATHLEN + 1]; - snprintf(buf2, MAXPATHLEN, "%s/%s", curdir, path); path = buf2; } Modified: projects/clang500-import/contrib/bmake/mk/ChangeLog ============================================================================== --- projects/clang500-import/contrib/bmake/mk/ChangeLog Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/ChangeLog Tue May 16 19:54:47 2017 (r318381) @@ -1,3 +1,37 @@ +2017-05-08 Simon J. Gerraty + + * install-mk (MK_VERSION): 20170505 + + * meta2deps.py: fix botched indenation. + +2017-05-05 Simon J. Gerraty + + * sys/*.mk: Remove setting of MAKE it is unnecessary and + in many cases wrong (basname rather than full path) + + * scripts.mk (SCRIPTSGROUPS): make this more like files.mk and inc.mk + + * init.mk: define realbuild to simplify logic in {lib,prog}.mk etc + +2017-05-01 Simon J. Gerraty + + * install-mk (MK_VERSION): 20170501 + + * doc.mk: fix typo in DOC_INSTALL_OWN + + * inc.mk: handle INCGROUPS similar to freebsd + + * files.mk: add something for files too + + * add staging logic to lib.mk prog.mk etc. + +2017-04-24 Simon J. Gerraty + + * install-mk (MK_VERSION): 20170424 + + * dirdeps.mk: set NO_DIRDEPS when bootstrapping. + also target of bootstrap-this when sed is needed should be ${_want:T} + 2017-04-18 Simon J. Gerraty * install-mk (MK_VERSION): 20170418 Modified: projects/clang500-import/contrib/bmake/mk/FILES ============================================================================== --- projects/clang500-import/contrib/bmake/mk/FILES Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/FILES Tue May 16 19:54:47 2017 (r318381) @@ -9,6 +9,7 @@ cython.mk dep.mk doc.mk dpadd.mk +files.mk final.mk host-target.mk host.libnames.mk Modified: projects/clang500-import/contrib/bmake/mk/dirdeps.mk ============================================================================== --- projects/clang500-import/contrib/bmake/mk/dirdeps.mk Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/dirdeps.mk Tue May 16 19:54:47 2017 (r318381) @@ -1,4 +1,4 @@ -# $Id: dirdeps.mk,v 1.87 2017/03/07 01:49:03 sjg Exp $ +# $Id: dirdeps.mk,v 1.88 2017/04/24 20:34:59 sjg Exp $ # Copyright (c) 2010-2013, Juniper Networks, Inc. # All rights reserved. @@ -137,6 +137,14 @@ # built for. # +.if !target(bootstrap) && (make(bootstrap) || \ + make(bootstrap-this) || \ + make(bootstrap-recurse) || \ + make(bootstrap-empty)) +# disable most of below +.MAKE.LEVEL = 1 +.endif + # touch this at your peril _DIRDEP_USE_LEVEL?= 0 .if ${.MAKE.LEVEL} == ${_DIRDEP_USE_LEVEL} @@ -757,7 +765,7 @@ bootstrap-this: .NOTMAIN @echo Bootstrapping ${RELDIR}/${_want:T} from ${_src:T}; \ echo You need to build ${RELDIR} to correctly populate it. .if ${_src:T} != ${.MAKE.DEPENDFILE_PREFIX:T} - (cd ${.CURDIR} && sed ${.MAKE.DEPENDFILE_BOOTSTRAP_SED} ${_src} > ${_want}) + (cd ${.CURDIR} && sed ${.MAKE.DEPENDFILE_BOOTSTRAP_SED} ${_src} > ${_want:T}) .else cp ${.CURDIR}/${_src:T} ${_want} .endif Modified: projects/clang500-import/contrib/bmake/mk/doc.mk ============================================================================== --- projects/clang500-import/contrib/bmake/mk/doc.mk Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/doc.mk Tue May 16 19:54:47 2017 (r318381) @@ -1,4 +1,4 @@ -# $Id: doc.mk,v 1.5 2015/09/08 06:15:31 sjg Exp $ +# $Id: doc.mk,v 1.6 2017/05/01 21:24:10 sjg Exp $ .if !target(__${.PARSEFILE}__) __${.PARSEFILE}__: @@ -59,7 +59,7 @@ spell: ${SRCS} .include .if !empty(DOCOWN) -DOC_INSTALL_OWN?= -o ${DOCOWN} -g ${DOGGRP} +DOC_INSTALL_OWN?= -o ${DOCOWN} -g ${DOCGRP} .endif .endif Copied: projects/clang500-import/contrib/bmake/mk/files.mk (from r318379, head/contrib/bmake/mk/files.mk) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/contrib/bmake/mk/files.mk Tue May 16 19:54:47 2017 (r318381, copy of r318379, head/contrib/bmake/mk/files.mk) @@ -0,0 +1,83 @@ +# $Id: files.mk,v 1.6 2017/05/07 02:21:02 sjg Exp $ +# +# @(#) Copyright (c) 2017, Simon J. Gerraty +# +# This file is provided in the hope that it will +# be of use. There is absolutely NO WARRANTY. +# Permission to copy, redistribute or otherwise +# use this file is hereby granted provided that +# the above copyright notice and this notice are +# left intact. +# +# Please send copies of changes and bug-fixes to: +# sjg@crufty.net +# + +.include + +FILES_INSTALL_OWN ?= -o ${SHAREOWN} -g ${SHAREGRP} +FILESMODE ?= ${SHAREMODE} +FILES_COPY ?= -C + +FILESGROUPS ?= FILES +FILESGROUPS := ${FILESGROUPS:O:u} + +.if !target(buildfiles) +.for group in ${FILESGROUPS} +buildfiles: ${${group}} +.endfor +.endif +buildfiles: +realbuild: buildfiles + +# there is no default FILESDIR so +# ignore group if ${group}DIR is not defined +.for group in ${FILESGROUPS} +.if !empty(${group}) && defined(${group}DIR) +.if ${group} != "FILES" +${group}_INSTALL_OWN ?= ${FILES_INSTALL_OWN} +.endif +# incase we are staging +STAGE_DIR.${group} ?= ${STAGE_OBJTOP}${${group}DIR} + +.for file in ${${group}:O:u} +${group}_INSTALL_OWN.${file:T} ?= ${${group}_INSTALL_OWN} +${group}DIR.${file:T} ?= ${${group}DIR} +file_mkdir_list += ${${group}DIR.${file:T}} + +.if defined(${group}NAME.${file:T}) +STAGE_AS_SETS += ${group} +STAGE_AS_${file} = ${${group}NAME.${file:T}} +stage_as.${group}: ${file} + +installfiles: installfiles.${group}.${file:T} +installfiles.${group}.${file:T}: ${file} file_mkdirs + ${INSTALL} ${FILES_COPY} ${${group}_INSTALL_OWN.${file:T}} \ + -m ${FILESMODE} ${.ALLSRC:Nfile_mkdirs} ${DESTDIR}${${group}DIR}/${${group}NAME.${file:T}} + +.else +STAGE_SETS += ${group} +stage_files.${group}: ${file} +installfiles.${group}: ${file} +installfiles: installfiles.${group} +.endif + +.endfor # file + +installfiles.${group}: file_mkdirs + ${INSTALL} ${FILES_COPY} ${${group}_INSTALL_OWN} -m ${FILESMODE} \ + ${.ALLSRC:Nfile_mkdirs:O:u} ${DESTDIR}${${group}DIR} + +.endif # !empty +.endfor # group + +file_mkdirs: + @for d in ${file_mkdir_list:O:u}; do \ + test -d ${DESTDIR}$$d || \ + ${INSTALL} -d ${FILES_INSTALL_OWN} -m 775 ${DESTDIR}$$d; \ + done + +beforeinstall: +installfiles: +realinstall: installfiles +.ORDER: beforeinstall installfiles Modified: projects/clang500-import/contrib/bmake/mk/final.mk ============================================================================== --- projects/clang500-import/contrib/bmake/mk/final.mk Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/final.mk Tue May 16 19:54:47 2017 (r318381) @@ -1,4 +1,4 @@ -# $Id: final.mk,v 1.6 2016/04/05 15:58:37 sjg Exp $ +# $Id: final.mk,v 1.8 2017/05/07 20:30:08 sjg Exp $ .if !target(__${.PARSEFILE}__) __${.PARSEFILE}__: @@ -6,9 +6,17 @@ __${.PARSEFILE}__: # provide a hook for folk who want to do scary stuff .-include <${.CURDIR:H}/Makefile-final.inc> -.if !empty(STAGE) +.if ${MK_STAGING} == "yes" +.include +.elif !empty(STAGE) .-include .endif .-include + +.if empty(_SKIP_BUILD) +install: realinstall +.endif +realinstall: + .endif Modified: projects/clang500-import/contrib/bmake/mk/inc.mk ============================================================================== --- projects/clang500-import/contrib/bmake/mk/inc.mk Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/inc.mk Tue May 16 19:54:47 2017 (r318381) @@ -1,4 +1,4 @@ -# $Id: inc.mk,v 1.3 2011/03/11 05:23:05 sjg Exp $ +# $Id: inc.mk,v 1.7 2017/05/06 17:29:45 sjg Exp $ # # @(#) Copyright (c) 2008, Simon J. Gerraty # @@ -15,8 +15,6 @@ .include -includes: ${INCS} - .if !empty(LIBOWN) INC_INSTALL_OWN ?= -o ${LIBOWN} -g ${LIBGRP} .endif @@ -24,12 +22,68 @@ INCMODE ?= 444 INC_COPY ?= -C INCSDIR ?= ${INCDIR} -realinstall: incinstall +STAGE_INCSDIR?= ${STAGE_OBJTOP}${INCSDIR} + +# accommodate folk used to freebsd +INCGROUPS ?= ${INCSGROUPS:UINCS} +INCGROUPS := ${INCGROUPS:O:u} + +.if !target(buildincludes) +.for group in ${INCGROUPS} +buildincludes: ${${group}} +.endfor +.endif +buildincludes: +includes: buildincludes + .if !target(incinstall) -incinstall: -.if !empty(INCS) - [ -d ${DESTDIR}${INCSDIR} ] || \ - ${INSTALL} -d ${INC_INSTALL_OWN} -m 775 ${DESTDIR}${INCSDIR} - ${INSTALL} ${INC_COPY} ${INC_INSTALL_OWN} -m ${INCMODE} ${INCS} ${DESTDIR}${INCSDIR} +.for group in ${INCGROUPS} +.if !empty(${group}) +.if ${group} != "INC" +${group}_INSTALL_OWN ?= ${INC_INSTALL_OWN} +${group}DIR ?= ${INCDIR} .endif +# incase we are staging +STAGE_DIR.${group} ?= ${STAGE_OBJTOP}${${group}DIR} + +.for header in ${${group}:O:u} +${group}_INSTALL_OWN.${header:T} ?= ${${group}_INSTALL_OWN} +${group}DIR.${header:T} ?= ${${group}DIR} +inc_mkdir_list += ${${group}DIR.${header:T}} + +.if defined(${group}NAME.${header:T}) +STAGE_AS_SETS += ${group} +STAGE_AS_${header} = ${${group}NAME.${header:T}} +stage_as.${group}: ${header} + +incinstall: incinstall.${group}.${header:T} +incinstall.${group}.${header:T}: ${header} inc_mkdirs + ${INSTALL} ${INC_COPY} ${${group}_INSTALL_OWN.${header:T}} -m ${INCMODE} ${.ALLSRC:Ninc_mkdirs} ${DESTDIR}${${group}DIR}/${${group}NAME.${header:T}} + +.else +STAGE_SETS += ${group} +stage_files.${group}: ${header} +incinstall.${group}: ${header} +incinstall: incinstall.${group} .endif + +.endfor # header + +incinstall.${group}: inc_mkdirs + ${INSTALL} ${INC_COPY} ${${group}_INSTALL_OWN} -m ${INCMODE} \ + ${.ALLSRC:Ninc_mkdirs:O:u} ${DESTDIR}${${group}DIR} + +.endif # !empty +.endfor # group + +inc_mkdirs: + @for d in ${inc_mkdir_list:O:u}; do \ + test -d ${DESTDIR}$$d || \ + ${INSTALL} -d ${INC_INSTALL_OWN} -m 775 ${DESTDIR}$$d; \ + done + +.endif # !target(incinstall) + +beforeinstall: +realinstall: incinstall +.ORDER: beforeinstall incinstall Modified: projects/clang500-import/contrib/bmake/mk/init.mk ============================================================================== --- projects/clang500-import/contrib/bmake/mk/init.mk Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/init.mk Tue May 16 19:54:47 2017 (r318381) @@ -1,4 +1,4 @@ -# $Id: init.mk,v 1.12 2016/04/05 15:58:37 sjg Exp $ +# $Id: init.mk,v 1.15 2017/05/07 20:27:54 sjg Exp $ # # @(#) Copyright (c) 2002, Simon J. Gerraty # @@ -50,8 +50,20 @@ PROFFLAGS?= -DGPROF -DPROF _SKIP_BUILD = not building at level 0 .endif -.if !empty(_SKIP_BUILD) +.if !defined(.PARSEDIR) +# no-op is the best we can do if not bmake. +.WAIT: +.endif + +# define this once for consistency +.if empty(_SKIP_BUILD) +# beforebuild is a hook for things that must be done early +all: beforebuild .WAIT realbuild +.else all: .PHONY .warning ${_SKIP_BUILD} .endif +beforebuild: +realbuild: + .endif Modified: projects/clang500-import/contrib/bmake/mk/install-mk ============================================================================== --- projects/clang500-import/contrib/bmake/mk/install-mk Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/install-mk Tue May 16 19:54:47 2017 (r318381) @@ -55,7 +55,7 @@ # Simon J. Gerraty # RCSid: -# $Id: install-mk,v 1.141 2017/04/18 23:53:18 sjg Exp $ +# $Id: install-mk,v 1.145 2017/05/09 04:05:32 sjg Exp $ # # @(#) Copyright (c) 1994 Simon J. Gerraty # @@ -70,7 +70,7 @@ # sjg@crufty.net # -MK_VERSION=20170418 +MK_VERSION=20170505 OWNER= GROUP= MODE=444 @@ -176,7 +176,7 @@ $SKIP_MKFILES Do chmod $BINMODE $mk_scri [ "$OWNER" ] && $SKIP_MKFILES Do chown $OWNER $mk_files $sys_mk_files # if this is a BSD system the bsd.*.mk should exist and be used. if [ -z "$SKIP_BSD_MK" ]; then - for f in dep doc init lib links man nls obj own prog subdir + for f in dep doc files inc init lib links man nls obj own prog subdir do b=bsd.$f.mk [ -s $b ] || Do ln -s $f.mk $b Modified: projects/clang500-import/contrib/bmake/mk/lib.mk ============================================================================== --- projects/clang500-import/contrib/bmake/mk/lib.mk Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/lib.mk Tue May 16 19:54:47 2017 (r318381) @@ -1,4 +1,4 @@ -# $Id: lib.mk,v 1.55 2016/09/23 23:04:51 sjg Exp $ +# $Id: lib.mk,v 1.61 2017/05/06 17:30:09 sjg Exp $ .if !target(__${.PARSEFILE}__) __${.PARSEFILE}__: @@ -37,7 +37,7 @@ PICO?= .pico CFLAGS+= ${COPTS} -# Derrived from NetBSD-1.6 +# Originally derrived from NetBSD-1.6 # Set PICFLAGS to cc flags for producing position-independent code, # if not already set. Includes -DPIC, if required. @@ -375,15 +375,14 @@ _LIBS+=llib-l${LIB}.ln .include .endif -.if !defined(_SKIP_BUILD) -all: prebuild .WAIT ${_LIBS} -# a hook for things that must be done early -prebuild: -.if !defined(.PARSEDIR) -# no-op is the best we can do if not bmake. -.WAIT: +.if empty(LIB) +_LIBS= .endif + +.if !defined(_SKIP_BUILD) +realbuild: ${_LIBS} .endif + all: _SUBDIRUSE .for s in ${SRCS:N*.h:M*/*} @@ -509,7 +508,7 @@ LIB_INSTALL_OWN ?= -o ${LIBOWN} -g ${LIB .include -.if !target(realinstall) +.if !target(realinstall) && !empty(LIB) realinstall: libinstall .endif .if !target(libinstall) @@ -552,13 +551,19 @@ libinstall: .endif .endif +.if ${MK_MAN} != "no" install: maninstall _SUBDIRUSE maninstall: afterinstall +.endif afterinstall: realinstall libinstall: beforeinstall realinstall: beforeinstall .endif +.if defined(FILES) || defined(FILESGROUPS) +.include +.endif + .if ${MK_MAN} != "no" .include .endif @@ -591,5 +596,10 @@ realinstall: beforeinstall .endfor @touch ${.TARGET} +.if !empty(LIB) +STAGE_LIBDIR?= ${STAGE_OBJTOP}${LIBDIR} +stage_libs: ${_LIBS} +.endif + .include .endif Modified: projects/clang500-import/contrib/bmake/mk/meta2deps.py ============================================================================== --- projects/clang500-import/contrib/bmake/mk/meta2deps.py Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/meta2deps.py Tue May 16 19:54:47 2017 (r318381) @@ -37,7 +37,7 @@ We only pay attention to a subset of the """ RCSid: - $Id: meta2deps.py,v 1.25 2017/04/03 21:04:09 sjg Exp $ + $Id: meta2deps.py,v 1.26 2017/05/09 04:04:16 sjg Exp $ Copyright (c) 2011-2013, Juniper Networks, Inc. All rights reserved. @@ -142,7 +142,7 @@ def sort_unique(list, cmp=None, key=None for e in list: if e == le: continue - le = e + le = e nl.append(e) return nl @@ -534,7 +534,7 @@ class MetaFile: # to the src dir, we may need to add dependencies for each rdir = dir dir = abspath(dir, cwd, self.last_dir, self.debug, self.debug_out) - rdir = os.path.realpath(dir) + rdir = os.path.realpath(dir) if rdir == dir: rdir = None # now put path back together Modified: projects/clang500-import/contrib/bmake/mk/own.mk ============================================================================== --- projects/clang500-import/contrib/bmake/mk/own.mk Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/own.mk Tue May 16 19:54:47 2017 (r318381) @@ -1,4 +1,4 @@ -# $Id: own.mk,v 1.32 2016/05/18 20:54:29 sjg Exp $ +# $Id: own.mk,v 1.35 2017/05/03 18:09:44 sjg Exp $ .if !target(__${.PARSEFILE}__) __${.PARSEFILE}__: @@ -117,6 +117,7 @@ OPTIONS_DEFAULT_DEPENDENT+= \ PICINSTALL/LINKLIB \ PICLIB/PIC \ PROFILE/LINKLIB \ + STAGING_PROG/STAGING \ .include @@ -128,7 +129,7 @@ _uid!= id -u USERGRP!= id -g .export USERGRP .endif -.for x in BIN CONF DOC INFO KMOD LIB MAN NLS SHARE +.for x in BIN CONF DOC INC INFO FILES KMOD LIB MAN NLS SHARE $xOWN= ${USER} $xGRP= ${USERGRP} $x_INSTALL_OWN= @@ -145,6 +146,9 @@ BINMODE?= 555 NONBINMODE?= 444 DIRMODE?= 755 +INCLUDEDIR?= ${prefix}/include +INCDIR?= ${INCLUDEDIR} + # Define MANZ to have the man pages compressed (gzip) #MANZ= 1 @@ -184,6 +188,10 @@ KMODGRP?= ${BINGRP} KMODOWN?= ${BINOWN} KMODMODE?= ${NONBINMODE} +SHAREGRP?= ${BINGRP} +SHAREOWN?= ${BINOWN} +SHAREMODE?= ${NONBINMODE} + COPY?= -c STRIP_FLAG?= -s @@ -244,4 +252,19 @@ MK_MAN= no MK_NLS= no .endif +# :U incase not using our sys.mk +.if ${MK_META_MODE:Uno} == "yes" +# should all be set by sys.mk if not default +TARGET_SPEC_VARS ?= MACHINE +.if ${TARGET_SPEC_VARS:[#]} > 1 +TARGET_SPEC_VARS_REV := ${TARGET_SPEC_VARS:[-1..1]} +.else +TARGET_SPEC_VARS_REV = ${TARGET_SPEC_VARS} +.endif +.if ${MK_STAGING} == "yes" +STAGE_ROOT?= ${OBJROOT}/stage +STAGE_OBJTOP?= ${STAGE_ROOT}/${TARGET_SPEC_VARS_REV:ts/} +.endif +.endif + .endif Modified: projects/clang500-import/contrib/bmake/mk/prog.mk ============================================================================== --- projects/clang500-import/contrib/bmake/mk/prog.mk Tue May 16 19:53:38 2017 (r318380) +++ projects/clang500-import/contrib/bmake/mk/prog.mk Tue May 16 19:54:47 2017 (r318381) @@ -1,4 +1,4 @@ -# $Id: prog.mk,v 1.28 2017/02/14 21:26:13 sjg Exp $ +# $Id: prog.mk,v 1.32 2017/05/06 17:30:09 sjg Exp $ .if !target(__${.PARSEFILE}__) __${.PARSEFILE}__: @@ -75,6 +75,8 @@ ${CXX_SUFFIXES:%=%.o}: .if defined(PROG) +BINDIR ?= ${prefix}/bin + SRCS?= ${PROG}.c .for s in ${SRCS:N*.h:N*.sh:M*/*} ${.o .po .lo:L:@o@${s:T:R}$o@}: $s @@ -126,8 +128,9 @@ MAN= ${PROG}.1 .endif # defined(PROG) .if !defined(_SKIP_BUILD) -all: ${PROG} +realbuild: ${PROG} .endif + all: _SUBDIRUSE .if !target(clean) @@ -208,6 +211,10 @@ lint: ${LOBJS} .NOPATH: ${OBJS} .endif +.if defined(FILES) || defined(FILESGROUPS) +.include +.endif + .if ${MK_MAN} != "no" .include .endif @@ -219,6 +226,20 @@ lint: ${LOBJS} .include .include .include + +.if !empty(PROG) && ${MK_STAGING_PROG} == "yes" +STAGE_BINDIR ?= ${STAGE_OBJTOP}${BINDIR} +STAGE_DIR.prog ?= ${STAGE_BINDIR} +.if ${PROG_NAME:U${PROG}} != ${PROG} +STAGE_AS_SETS += prog +STAGE_AS_${PROG} = ${PROG_NAME} +stage_as.prog: ${PROG} +.else +STAGE_SETS += prog +stage_files.prog: ${PROG} +.endif +.endif + .include .endif Modified: projects/clang500-import/contrib/bmake/mk/scripts.mk ============================================================================== --- projects/clang500-import/contrib/bmake/mk/scripts.mk Tue May 16 19:53:38 2017 (r318380) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Tue May 16 21:50:37 2017 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2DDEFD70963 for ; Tue, 16 May 2017 21:50:37 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 88CD6974; Tue, 16 May 2017 21:50:36 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v4GLoZM4047981; Tue, 16 May 2017 21:50:35 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v4GLoULZ047200; Tue, 16 May 2017 21:50:30 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201705162150.v4GLoULZ047200@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Tue, 16 May 2017 21:50:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r318384 - in projects/clang500-import: contrib/compiler-rt/include/xray contrib/compiler-rt/lib/asan contrib/compiler-rt/lib/builtins contrib/compiler-rt/lib/builtins/arm contrib/compil... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 May 2017 21:50:37 -0000 Author: dim Date: Tue May 16 21:50:29 2017 New Revision: 318384 URL: https://svnweb.freebsd.org/changeset/base/318384 Log: Merge llvm, clang, lld, lldb, compiler-rt and libc++ r303197, and update build glue. Added: projects/clang500-import/contrib/compiler-rt/lib/scudo/scudo_allocator_combined.h - copied unchanged from r318381, vendor/compiler-rt/dist/lib/scudo/scudo_allocator_combined.h projects/clang500-import/contrib/compiler-rt/lib/scudo/scudo_crc32.h - copied unchanged from r318381, vendor/compiler-rt/dist/lib/scudo/scudo_crc32.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/ExpandReductions.h - copied unchanged from r318381, vendor/llvm/dist/include/llvm/CodeGen/ExpandReductions.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/RandomAccessTypeVisitor.h - copied unchanged from r318381, vendor/llvm/dist/include/llvm/DebugInfo/CodeView/RandomAccessTypeVisitor.h projects/clang500-import/contrib/llvm/include/llvm/Support/Parallel.h - copied unchanged from r318381, vendor/llvm/dist/include/llvm/Support/Parallel.h projects/clang500-import/contrib/llvm/include/llvm/ToolDrivers/ - copied from r318381, vendor/llvm/dist/include/llvm/ToolDrivers/ projects/clang500-import/contrib/llvm/lib/CodeGen/ExpandReductions.cpp - copied unchanged from r318381, vendor/llvm/dist/lib/CodeGen/ExpandReductions.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/LiveRangeShrink.cpp - copied unchanged from r318381, vendor/llvm/dist/lib/CodeGen/LiveRangeShrink.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/ScalarizeMaskedMemIntrin.cpp - copied unchanged from r318381, vendor/llvm/dist/lib/CodeGen/ScalarizeMaskedMemIntrin.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/RandomAccessTypeVisitor.cpp - copied unchanged from r318381, vendor/llvm/dist/lib/DebugInfo/CodeView/RandomAccessTypeVisitor.cpp projects/clang500-import/contrib/llvm/lib/Support/Parallel.cpp - copied unchanged from r318381, vendor/llvm/dist/lib/Support/Parallel.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp - copied unchanged from r318381, vendor/llvm/dist/lib/Target/AMDGPU/AMDGPUMachineCFGStructurizer.cpp projects/clang500-import/contrib/llvm/lib/ToolDrivers/ - copied from r318381, vendor/llvm/dist/lib/ToolDrivers/ projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Utility/Status.h - copied unchanged from r318381, vendor/lldb/dist/include/lldb/Utility/Status.h projects/clang500-import/contrib/llvm/tools/lldb/source/Utility/Status.cpp - copied unchanged from r318381, vendor/lldb/dist/source/Utility/Status.cpp Deleted: projects/clang500-import/contrib/llvm/include/llvm/LibDriver/ projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/ModuleDebugUnknownFragment.cpp projects/clang500-import/contrib/llvm/lib/ToolDrivers/CMakeLists.txt projects/clang500-import/contrib/llvm/lib/ToolDrivers/LLVMBuild.txt projects/clang500-import/contrib/llvm/lib/ToolDrivers/llvm-lib/CMakeLists.txt projects/clang500-import/contrib/llvm/lib/ToolDrivers/llvm-lib/LLVMBuild.txt projects/clang500-import/contrib/llvm/tools/lld/include/lld/Core/Parallel.h projects/clang500-import/contrib/llvm/tools/lld/include/lld/Core/TaskGroup.h projects/clang500-import/contrib/llvm/tools/lld/lib/Core/TaskGroup.cpp projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Utility/Error.h projects/clang500-import/contrib/llvm/tools/lldb/source/Utility/Error.cpp Modified: projects/clang500-import/contrib/compiler-rt/include/xray/xray_interface.h projects/clang500-import/contrib/compiler-rt/lib/asan/asan_allocator.h projects/clang500-import/contrib/compiler-rt/lib/asan/asan_flags.cc projects/clang500-import/contrib/compiler-rt/lib/builtins/adddf3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/addsf3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmpeq_check_nan.c projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_cfcmpeq_check_nan.c projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_div0.c projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_drsub.c projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_frsub.c projects/clang500-import/contrib/compiler-rt/lib/builtins/ashldi3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/ashrdi3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/assembly.h projects/clang500-import/contrib/compiler-rt/lib/builtins/comparedf2.c projects/clang500-import/contrib/compiler-rt/lib/builtins/comparesf2.c projects/clang500-import/contrib/compiler-rt/lib/builtins/divdf3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/divsf3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/divsi3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/extendhfsf2.c projects/clang500-import/contrib/compiler-rt/lib/builtins/extendsfdf2.c projects/clang500-import/contrib/compiler-rt/lib/builtins/fixdfdi.c projects/clang500-import/contrib/compiler-rt/lib/builtins/fixdfsi.c projects/clang500-import/contrib/compiler-rt/lib/builtins/fixsfdi.c projects/clang500-import/contrib/compiler-rt/lib/builtins/fixsfsi.c projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunsdfdi.c projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunsdfsi.c projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunssfdi.c projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunssfsi.c projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdidf.c projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdisf.c projects/clang500-import/contrib/compiler-rt/lib/builtins/floatsidf.c projects/clang500-import/contrib/compiler-rt/lib/builtins/floatsisf.c projects/clang500-import/contrib/compiler-rt/lib/builtins/floatundidf.c projects/clang500-import/contrib/compiler-rt/lib/builtins/floatundisf.c projects/clang500-import/contrib/compiler-rt/lib/builtins/floatunsidf.c projects/clang500-import/contrib/compiler-rt/lib/builtins/floatunsisf.c projects/clang500-import/contrib/compiler-rt/lib/builtins/int_lib.h projects/clang500-import/contrib/compiler-rt/lib/builtins/lshrdi3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/muldf3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/muldi3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/mulsf3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/negdf2.c projects/clang500-import/contrib/compiler-rt/lib/builtins/negsf2.c projects/clang500-import/contrib/compiler-rt/lib/builtins/subdf3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/subsf3.c projects/clang500-import/contrib/compiler-rt/lib/builtins/truncdfhf2.c projects/clang500-import/contrib/compiler-rt/lib/builtins/truncdfsf2.c projects/clang500-import/contrib/compiler-rt/lib/builtins/truncsfhf2.c projects/clang500-import/contrib/compiler-rt/lib/builtins/udivsi3.c projects/clang500-import/contrib/compiler-rt/lib/esan/esan_interceptors.cpp projects/clang500-import/contrib/compiler-rt/lib/lsan/lsan_allocator.h projects/clang500-import/contrib/compiler-rt/lib/lsan/lsan_common_linux.cc projects/clang500-import/contrib/compiler-rt/lib/lsan/lsan_common_mac.cc projects/clang500-import/contrib/compiler-rt/lib/msan/msan_allocator.cc projects/clang500-import/contrib/compiler-rt/lib/msan/msan_interceptors.cc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_internal.h projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary32.h projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.inc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps.h projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_linux.cc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_mac.cc projects/clang500-import/contrib/compiler-rt/lib/scudo/scudo_allocator.cpp projects/clang500-import/contrib/compiler-rt/lib/scudo/scudo_allocator.h projects/clang500-import/contrib/compiler-rt/lib/scudo/scudo_allocator_secondary.h projects/clang500-import/contrib/compiler-rt/lib/scudo/scudo_crc32.cpp projects/clang500-import/contrib/compiler-rt/lib/scudo/scudo_utils.h projects/clang500-import/contrib/compiler-rt/lib/tsan/rtl/tsan_rtl.h projects/clang500-import/contrib/compiler-rt/lib/xray/xray_AArch64.cc projects/clang500-import/contrib/compiler-rt/lib/xray/xray_arm.cc projects/clang500-import/contrib/compiler-rt/lib/xray/xray_fdr_log_records.h projects/clang500-import/contrib/compiler-rt/lib/xray/xray_fdr_logging.cc projects/clang500-import/contrib/compiler-rt/lib/xray/xray_fdr_logging_impl.h projects/clang500-import/contrib/compiler-rt/lib/xray/xray_interface.cc projects/clang500-import/contrib/compiler-rt/lib/xray/xray_interface_internal.h projects/clang500-import/contrib/compiler-rt/lib/xray/xray_mips.cc projects/clang500-import/contrib/compiler-rt/lib/xray/xray_mips64.cc projects/clang500-import/contrib/compiler-rt/lib/xray/xray_powerpc64.cc projects/clang500-import/contrib/compiler-rt/lib/xray/xray_trampoline_powerpc64_asm.S projects/clang500-import/contrib/compiler-rt/lib/xray/xray_trampoline_x86_64.S projects/clang500-import/contrib/compiler-rt/lib/xray/xray_x86_64.cc projects/clang500-import/contrib/libc++/include/__bsd_locale_fallbacks.h projects/clang500-import/contrib/libc++/include/__config projects/clang500-import/contrib/libc++/include/__locale projects/clang500-import/contrib/libc++/include/__mutex_base projects/clang500-import/contrib/libc++/include/__threading_support projects/clang500-import/contrib/libc++/include/__undef_min_max projects/clang500-import/contrib/libc++/include/algorithm projects/clang500-import/contrib/libc++/include/ctype.h projects/clang500-import/contrib/libc++/include/experimental/numeric projects/clang500-import/contrib/libc++/include/ext/hash_map projects/clang500-import/contrib/libc++/include/ext/hash_set projects/clang500-import/contrib/libc++/include/limits projects/clang500-import/contrib/libc++/include/locale projects/clang500-import/contrib/libc++/include/memory projects/clang500-import/contrib/libc++/include/numeric projects/clang500-import/contrib/libc++/include/stdio.h projects/clang500-import/contrib/libc++/include/stdlib.h projects/clang500-import/contrib/libc++/include/string_view projects/clang500-import/contrib/libc++/include/variant projects/clang500-import/contrib/libc++/include/wchar.h projects/clang500-import/contrib/libc++/src/include/atomic_support.h projects/clang500-import/contrib/libc++/src/locale.cpp projects/clang500-import/contrib/libc++/src/string.cpp projects/clang500-import/contrib/libc++/src/support/runtime/exception_pointer_msvc.ipp projects/clang500-import/contrib/libc++/src/thread.cpp projects/clang500-import/contrib/llvm/include/llvm/ADT/APInt.h projects/clang500-import/contrib/llvm/include/llvm/ADT/BitVector.h projects/clang500-import/contrib/llvm/include/llvm/ADT/STLExtras.h projects/clang500-import/contrib/llvm/include/llvm/ADT/StringExtras.h projects/clang500-import/contrib/llvm/include/llvm/Analysis/CallGraph.h projects/clang500-import/contrib/llvm/include/llvm/Analysis/ProfileSummaryInfo.h projects/clang500-import/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h projects/clang500-import/contrib/llvm/include/llvm/Analysis/TargetLibraryInfo.def projects/clang500-import/contrib/llvm/include/llvm/Analysis/TargetTransformInfo.h projects/clang500-import/contrib/llvm/include/llvm/Analysis/TargetTransformInfoImpl.h projects/clang500-import/contrib/llvm/include/llvm/Analysis/ValueTracking.h projects/clang500-import/contrib/llvm/include/llvm/Bitcode/BitcodeReader.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/GlobalISel/Utils.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/ISDOpcodes.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/MachineCombinerPattern.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/Passes.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/CVTypeVisitor.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeDatabase.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeDatabaseVisitor.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeDumpVisitor.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeIndex.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeVisitorCallbackPipeline.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRangeList.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFRelocMap.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/RawTypes.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiStream.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h projects/clang500-import/contrib/llvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h projects/clang500-import/contrib/llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h projects/clang500-import/contrib/llvm/include/llvm/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.h projects/clang500-import/contrib/llvm/include/llvm/ExecutionEngine/RTDyldMemoryManager.h projects/clang500-import/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyld.h projects/clang500-import/contrib/llvm/include/llvm/IR/Attributes.h projects/clang500-import/contrib/llvm/include/llvm/IR/CallingConv.h projects/clang500-import/contrib/llvm/include/llvm/IR/Constants.h projects/clang500-import/contrib/llvm/include/llvm/IR/DebugInfoMetadata.h projects/clang500-import/contrib/llvm/include/llvm/IR/DebugLoc.h projects/clang500-import/contrib/llvm/include/llvm/IR/DerivedTypes.h projects/clang500-import/contrib/llvm/include/llvm/IR/DiagnosticInfo.h projects/clang500-import/contrib/llvm/include/llvm/IR/Function.h projects/clang500-import/contrib/llvm/include/llvm/IR/GetElementPtrTypeIterator.h projects/clang500-import/contrib/llvm/include/llvm/IR/GlobalAlias.h projects/clang500-import/contrib/llvm/include/llvm/IR/GlobalIFunc.h projects/clang500-import/contrib/llvm/include/llvm/IR/GlobalObject.h projects/clang500-import/contrib/llvm/include/llvm/IR/GlobalValue.h projects/clang500-import/contrib/llvm/include/llvm/IR/GlobalVariable.h projects/clang500-import/contrib/llvm/include/llvm/IR/IRBuilder.h projects/clang500-import/contrib/llvm/include/llvm/IR/InstrTypes.h projects/clang500-import/contrib/llvm/include/llvm/IR/Instruction.h projects/clang500-import/contrib/llvm/include/llvm/IR/Instructions.h projects/clang500-import/contrib/llvm/include/llvm/IR/Intrinsics.td projects/clang500-import/contrib/llvm/include/llvm/IR/LLVMContext.h projects/clang500-import/contrib/llvm/include/llvm/IR/LegacyPassManager.h projects/clang500-import/contrib/llvm/include/llvm/IR/Module.h projects/clang500-import/contrib/llvm/include/llvm/IR/ModuleSummaryIndex.h projects/clang500-import/contrib/llvm/include/llvm/IR/PassManager.h projects/clang500-import/contrib/llvm/include/llvm/IR/PassManagerInternal.h projects/clang500-import/contrib/llvm/include/llvm/IR/PatternMatch.h projects/clang500-import/contrib/llvm/include/llvm/IR/ProfileSummary.h projects/clang500-import/contrib/llvm/include/llvm/IR/Statepoint.h projects/clang500-import/contrib/llvm/include/llvm/IR/SymbolTableListTraits.h projects/clang500-import/contrib/llvm/include/llvm/IR/TrackingMDRef.h projects/clang500-import/contrib/llvm/include/llvm/IR/Type.h projects/clang500-import/contrib/llvm/include/llvm/IR/TypeFinder.h projects/clang500-import/contrib/llvm/include/llvm/IR/Use.h projects/clang500-import/contrib/llvm/include/llvm/IR/UseListOrder.h projects/clang500-import/contrib/llvm/include/llvm/IR/User.h projects/clang500-import/contrib/llvm/include/llvm/IR/Value.h projects/clang500-import/contrib/llvm/include/llvm/IR/ValueHandle.h projects/clang500-import/contrib/llvm/include/llvm/IR/ValueMap.h projects/clang500-import/contrib/llvm/include/llvm/IR/ValueSymbolTable.h projects/clang500-import/contrib/llvm/include/llvm/IR/Verifier.h projects/clang500-import/contrib/llvm/include/llvm/InitializePasses.h projects/clang500-import/contrib/llvm/include/llvm/LinkAllPasses.h projects/clang500-import/contrib/llvm/include/llvm/Object/Wasm.h projects/clang500-import/contrib/llvm/include/llvm/ObjectYAML/WasmYAML.h projects/clang500-import/contrib/llvm/include/llvm/ProfileData/SampleProfWriter.h projects/clang500-import/contrib/llvm/include/llvm/Support/BinaryStreamArray.h projects/clang500-import/contrib/llvm/include/llvm/Support/Compiler.h projects/clang500-import/contrib/llvm/include/llvm/Support/KnownBits.h projects/clang500-import/contrib/llvm/include/llvm/Support/Wasm.h projects/clang500-import/contrib/llvm/include/llvm/Target/Target.td projects/clang500-import/contrib/llvm/include/llvm/Target/TargetInstrInfo.h projects/clang500-import/contrib/llvm/include/llvm/Target/TargetLowering.h projects/clang500-import/contrib/llvm/include/llvm/Target/TargetSchedule.td projects/clang500-import/contrib/llvm/include/llvm/Target/TargetSelectionDAG.td projects/clang500-import/contrib/llvm/include/llvm/Transforms/Utils/Cloning.h projects/clang500-import/contrib/llvm/include/llvm/Transforms/Utils/LoopUtils.h projects/clang500-import/contrib/llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h projects/clang500-import/contrib/llvm/include/llvm/module.modulemap projects/clang500-import/contrib/llvm/lib/Analysis/BasicAliasAnalysis.cpp projects/clang500-import/contrib/llvm/lib/Analysis/BranchProbabilityInfo.cpp projects/clang500-import/contrib/llvm/lib/Analysis/CallGraph.cpp projects/clang500-import/contrib/llvm/lib/Analysis/ConstantFolding.cpp projects/clang500-import/contrib/llvm/lib/Analysis/DemandedBits.cpp projects/clang500-import/contrib/llvm/lib/Analysis/InlineCost.cpp projects/clang500-import/contrib/llvm/lib/Analysis/InstructionSimplify.cpp projects/clang500-import/contrib/llvm/lib/Analysis/ModuleSummaryAnalysis.cpp projects/clang500-import/contrib/llvm/lib/Analysis/OptimizationDiagnosticInfo.cpp projects/clang500-import/contrib/llvm/lib/Analysis/ProfileSummaryInfo.cpp projects/clang500-import/contrib/llvm/lib/Analysis/ScalarEvolution.cpp projects/clang500-import/contrib/llvm/lib/Analysis/TargetLibraryInfo.cpp projects/clang500-import/contrib/llvm/lib/Analysis/TargetTransformInfo.cpp projects/clang500-import/contrib/llvm/lib/Analysis/ValueTracking.cpp projects/clang500-import/contrib/llvm/lib/Analysis/VectorUtils.cpp projects/clang500-import/contrib/llvm/lib/AsmParser/LLParser.cpp projects/clang500-import/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp projects/clang500-import/contrib/llvm/lib/Bitcode/Reader/MetadataLoader.cpp projects/clang500-import/contrib/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp projects/clang500-import/contrib/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.h projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/WinException.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/AtomicExpandPass.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/CodeGen.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/ExpandPostRAPseudos.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/GlobalISel/RegBankSelect.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/GlobalISel/Utils.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/IfConversion.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/LiveVariables.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/MachineBlockPlacement.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/MachineVerifier.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/PHIElimination.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/RegisterCoalescer.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/RegisterScavenging.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SafeStack.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/ShrinkWrap.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SjLjEHPrepare.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/TargetPassConfig.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/UnreachableBlockElim.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/CVTypeVisitor.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/TypeDatabase.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/TypeDatabaseVisitor.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugAranges.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/DWARF/DWARFDebugRangeList.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/DWARF/DWARFDie.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/DWARF/DWARFTypeUnit.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp projects/clang500-import/contrib/llvm/lib/ExecutionEngine/Orc/OrcMCJITReplacement.h projects/clang500-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp projects/clang500-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp projects/clang500-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp projects/clang500-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h projects/clang500-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h projects/clang500-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFI386.h projects/clang500-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFThumb.h projects/clang500-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h projects/clang500-import/contrib/llvm/lib/IR/AsmWriter.cpp projects/clang500-import/contrib/llvm/lib/IR/AttributeImpl.h projects/clang500-import/contrib/llvm/lib/IR/Attributes.cpp projects/clang500-import/contrib/llvm/lib/IR/ConstantFold.cpp projects/clang500-import/contrib/llvm/lib/IR/ConstantRange.cpp projects/clang500-import/contrib/llvm/lib/IR/Constants.cpp projects/clang500-import/contrib/llvm/lib/IR/ConstantsContext.h projects/clang500-import/contrib/llvm/lib/IR/DebugInfoMetadata.cpp projects/clang500-import/contrib/llvm/lib/IR/DebugLoc.cpp projects/clang500-import/contrib/llvm/lib/IR/DiagnosticInfo.cpp projects/clang500-import/contrib/llvm/lib/IR/Function.cpp projects/clang500-import/contrib/llvm/lib/IR/Globals.cpp projects/clang500-import/contrib/llvm/lib/IR/IRBuilder.cpp projects/clang500-import/contrib/llvm/lib/IR/Instruction.cpp projects/clang500-import/contrib/llvm/lib/IR/Instructions.cpp projects/clang500-import/contrib/llvm/lib/IR/LegacyPassManager.cpp projects/clang500-import/contrib/llvm/lib/IR/Module.cpp projects/clang500-import/contrib/llvm/lib/IR/Type.cpp projects/clang500-import/contrib/llvm/lib/IR/Verifier.cpp projects/clang500-import/contrib/llvm/lib/LTO/LTO.cpp projects/clang500-import/contrib/llvm/lib/LTO/LTOCodeGenerator.cpp projects/clang500-import/contrib/llvm/lib/LTO/ThinLTOCodeGenerator.cpp projects/clang500-import/contrib/llvm/lib/Linker/IRMover.cpp projects/clang500-import/contrib/llvm/lib/MC/MCObjectStreamer.cpp projects/clang500-import/contrib/llvm/lib/MC/MCParser/AsmParser.cpp projects/clang500-import/contrib/llvm/lib/Object/COFFObjectFile.cpp projects/clang500-import/contrib/llvm/lib/Object/WasmObjectFile.cpp projects/clang500-import/contrib/llvm/lib/ObjectYAML/WasmYAML.cpp projects/clang500-import/contrib/llvm/lib/ProfileData/SampleProfWriter.cpp projects/clang500-import/contrib/llvm/lib/Support/APInt.cpp projects/clang500-import/contrib/llvm/lib/Support/Unix/Path.inc projects/clang500-import/contrib/llvm/lib/Support/Unix/Process.inc projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64.td projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64CallLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64FastISel.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64RegisterBankInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64SchedFalkorDetails.td projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64SchedFalkorWriteRes.td projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.h projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64TargetObjectFile.h projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h projects/clang500-import/contrib/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPU.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPU.td projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/FLATInstructions.td projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/GCNRegPressure.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/GCNRegPressure.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/GCNSchedStrategy.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIISelLowering.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIInstructions.td projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/VOP2Instructions.td projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/VOP3Instructions.td projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.h projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMCallLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMFastISel.cpp projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMISelLowering.h projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMInstrThumb.td projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMInstructionSelector.cpp projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMLegalizerInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMOptimizeBarriersPass.cpp projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMRegisterBankInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMTargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/AVR/AVRFrameLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/AVR/AVRISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/AVR/AVRInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/AVR/AVRRegisterInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/BPF/BPFISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/BPF/BPFInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp projects/clang500-import/contrib/llvm/lib/Target/Hexagon/HexagonPatterns.td projects/clang500-import/contrib/llvm/lib/Target/Hexagon/HexagonPseudo.td projects/clang500-import/contrib/llvm/lib/Target/Lanai/LanaiISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/Lanai/LanaiISelLowering.h projects/clang500-import/contrib/llvm/lib/Target/Lanai/LanaiInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/MSP430/MSP430FrameLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/MSP430/MSP430ISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.h projects/clang500-import/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/MSP430/MSP430RegisterInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsFastISel.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsOptimizePICCall.cpp projects/clang500-import/contrib/llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCFastISel.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCInstrAltivec.td projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCInstrVSX.td projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp projects/clang500-import/contrib/llvm/lib/Target/Sparc/SparcISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/Sparc/SparcRegisterInfo.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp projects/clang500-import/contrib/llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp projects/clang500-import/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCCodeEmitter.cpp projects/clang500-import/contrib/llvm/lib/Target/SystemZ/README.txt projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZFeatures.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.h projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZInstrFP.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZInstrFormats.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZOperands.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZOperators.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZSchedule.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ13.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ196.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZEC12.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZSubtarget.cpp projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZSubtarget.h projects/clang500-import/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrCall.td projects/clang500-import/contrib/llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/X86/X86.td projects/clang500-import/contrib/llvm/lib/Target/X86/X86FastISel.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86FixupLEAs.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstrCompiler.td projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstrInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstrInfo.h projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstrSSE.td projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstructionSelector.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86IntrinsicsInfo.h projects/clang500-import/contrib/llvm/lib/Target/X86/X86LegalizerInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86RegisterInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86Subtarget.h projects/clang500-import/contrib/llvm/lib/Target/X86/X86TargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86TargetTransformInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86WinEHState.cpp projects/clang500-import/contrib/llvm/lib/Target/XCore/XCoreISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/XCore/XCoreInstrInfo.td projects/clang500-import/contrib/llvm/lib/Transforms/Coroutines/CoroFrame.cpp projects/clang500-import/contrib/llvm/lib/Transforms/IPO/FunctionImport.cpp projects/clang500-import/contrib/llvm/lib/Transforms/IPO/Inliner.cpp projects/clang500-import/contrib/llvm/lib/Transforms/IPO/PartialInlining.cpp projects/clang500-import/contrib/llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstCombineInternal.h projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Instrumentation/EfficiencySanitizer.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/NewGVN.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/BypassSlowDivision.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/CloneFunction.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/CloneModule.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/EscapeEnumerator.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/InlineFunction.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/InstructionNamer.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/Local.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/LoopUtils.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/ModuleUtils.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/VNCoercion.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/ValueMapper.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp projects/clang500-import/contrib/llvm/lib/XRay/Trace.cpp projects/clang500-import/contrib/llvm/tools/bugpoint/ExtractFunction.cpp projects/clang500-import/contrib/llvm/tools/clang/include/clang-c/Index.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/CXXInheritance.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/Decl.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclCXX.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/ExternalASTMerger.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/RecursiveASTVisitor.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/Attr.td projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/Builtins.def projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticGroups.td projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/TargetOptions.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/Options.td projects/clang500-import/contrib/llvm/tools/clang/include/clang/Driver/SanitizerArgs.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Format/Format.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.def projects/clang500-import/contrib/llvm/tools/clang/include/clang/Lex/MacroInfo.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Lex/Preprocessor.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Parse/Parser.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/Sema.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Tooling/RefactoringCallbacks.h projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ASTImporter.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ASTStructuralEquivalence.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/CXXInheritance.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/DeclCXX.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ExternalASTMerger.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ODRHash.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/Stmt.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/Type.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/Targets.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGBuiltin.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGCUDANV.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGCleanup.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.h projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGDecl.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGException.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExpr.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExprAgg.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExprConstant.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExprScalar.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGObjCGNU.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGObjCMac.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/SanitizerArgs.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/ToolChains/Arch/Mips.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/ToolChains/Myriad.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/ToolChains/WebAssembly.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Format/ContinuationIndenter.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Format/Format.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Format/WhitespaceManager.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/CompilerInvocation.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/avxintrin.h projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/emmintrin.h projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/intrin.h projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/mmintrin.h projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/opencl-c.h projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/pmmintrin.h projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/prfchwintrin.h projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/smmintrin.h projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/tmmintrin.h projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/x86intrin.h projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/xmmintrin.h projects/clang500-import/contrib/llvm/tools/clang/lib/Index/IndexBody.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Index/IndexDecl.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Index/IndexTypeSourceInfo.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Index/IndexingContext.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/MacroInfo.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/ModuleMap.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/PPDirectives.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/Preprocessor.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseDeclCXX.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseExpr.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseExprCXX.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseTemplate.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/Sema.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaCast.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaCodeComplete.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaDeclAttr.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaExpr.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaExprObjC.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaInit.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaLookup.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaOverload.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaStmt.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaType.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTReader.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTWriter.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NoReturnFunctionChecker.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SelectorExtras.h projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Tooling/RefactoringCallbacks.cpp projects/clang500-import/contrib/llvm/tools/llc/llc.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/Driver.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/ICF.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/MapFile.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/Writer.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/Config.h projects/clang500-import/contrib/llvm/tools/lld/ELF/Driver.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/GdbIndex.h projects/clang500-import/contrib/llvm/tools/lld/ELF/ICF.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/InputFiles.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/InputSection.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/LinkerScript.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/LinkerScript.h projects/clang500-import/contrib/llvm/tools/lld/ELF/MapFile.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/OutputSections.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/OutputSections.h projects/clang500-import/contrib/llvm/tools/lld/ELF/Relocations.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/ScriptParser.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/Strings.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/Symbols.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/Symbols.h projects/clang500-import/contrib/llvm/tools/lld/ELF/SyntheticSections.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/SyntheticSections.h projects/clang500-import/contrib/llvm/tools/lld/ELF/Target.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/Threads.h projects/clang500-import/contrib/llvm/tools/lld/ELF/Thunks.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/Writer.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/Writer.h projects/clang500-import/contrib/llvm/tools/lld/lib/Core/CMakeLists.txt projects/clang500-import/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/LayoutPass.cpp projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/API/SBError.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/API/SBPlatform.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/API/SBTarget.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Breakpoint.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointID.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocation.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointOptions.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolver.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverAddress.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverFileLine.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverFileRegex.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointResolverName.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Watchpoint.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/Communication.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/Connection.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/Debugger.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/FormatEntity.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/MappedHash.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/Module.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/ModuleList.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/PluginManager.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/RegisterValue.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/Scalar.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/SearchFilter.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/StructuredData.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/StructuredDataImpl.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/Timer.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/UserSettingsController.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/Value.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/ValueObject.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResult.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResultCast.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResultChild.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResultImpl.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectDynamicValue.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectRegister.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectSyntheticFilter.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectVariable.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeSummary.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Expression/DWARFExpression.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionParser.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Expression/IRExecutionUnit.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Expression/IRInterpreter.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Expression/IRMemoryMap.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Expression/LLVMUserExpression.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Expression/Materializer.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Expression/REPL.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Expression/UserExpression.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Expression/UtilityFunction.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/File.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/FileCache.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/FileSystem.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/Host.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeProcessBase.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/HostNativeThreadBase.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/HostProcess.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/HostThread.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/IOObject.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/LockFileBase.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/MainLoop.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/MainLoopBase.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/MonitoringProcessLauncher.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/PipeBase.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/ProcessLauncher.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/Socket.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/ThreadLauncher.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeBreakpoint.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeBreakpointList.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeProcessProtocol.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeRegisterContext.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeThreadProtocol.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/common/NativeWatchpointList.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/common/SoftwareBreakpoint.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/common/TCPSocket.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/common/UDPSocket.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/posix/ConnectionFileDescriptorPosix.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/posix/DomainSocket.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/posix/HostProcessPosix.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/posix/HostThreadPosix.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/posix/LockFilePosix.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/posix/PipePosix.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/posix/ProcessLauncherPosix.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Host/posix/ProcessLauncherPosixFork.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/Args.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandInterpreter.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandReturnObject.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupArchitecture.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupBoolean.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupFile.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupFormat.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupOutputFile.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupPlatform.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupString.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupUInt64.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupUUID.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupValueObjectDisplay.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupVariable.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionGroupWatchpoint.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValue.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueArch.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueArray.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueBoolean.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueChar.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueDictionary.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueEnumeration.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFileSpec.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFileSpecList.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFormat.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueFormatEntity.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueLanguage.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValuePathMappings.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueProperties.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueRegex.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueSInt64.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueString.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueUInt64.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/OptionValueUUID.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/Options.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/ScriptInterpreter.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTContext.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Symbol/ObjectFile.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContext.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Symbol/Variable.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/ABI.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/DynamicLoader.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/Language.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/LanguageRuntime.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/Memory.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/ModuleCache.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/ObjCLanguageRuntime.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/PathMappingList.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/Platform.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/Process.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/ProcessLaunchInfo.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/ProcessStructReader.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/RegisterContext.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/StackFrame.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/StructuredDataPlugin.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/Target.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/TargetList.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/Thread.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Target/ThreadSpec.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Utility/JSON.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Utility/RegularExpression.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Utility/SelectHelper.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Utility/UUID.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/lldb-forward.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/lldb-private-enumerations.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/lldb-private-interfaces.h projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/lldb-private-types.h projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBBreakpoint.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBBreakpointLocation.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBCommandReturnObject.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBDebugger.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBError.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBFrame.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBHostOS.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBModule.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBPlatform.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBProcess.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBStream.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBStructuredData.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBTarget.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBThread.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SBValue.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/API/SystemInitializerFull.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/Breakpoint.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointID.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointIDList.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointList.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocation.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointOptions.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolver.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverAddress.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverFileLine.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverFileRegex.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverName.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/Watchpoint.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectArgs.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectArgs.h projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpoint.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpointCommand.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectBugreport.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectCommands.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectDisassemble.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectDisassemble.h projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.h projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectFrame.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectHelp.h projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectLog.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectMemory.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlatform.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlugin.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectProcess.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectRegister.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectSettings.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectSource.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectTarget.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectThread.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectType.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpoint.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpointCommand.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/Address.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ArchSpec.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/Communication.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/Debugger.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/Disassembler.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/DynamicLoader.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/EmulateInstruction.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/FormatEntity.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/IOHandler.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/Mangled.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/Module.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ModuleList.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/PluginManager.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/RegisterValue.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/Scalar.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/SearchFilter.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/StructuredData.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/Timer.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/UserSettingsController.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/Value.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObject.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObjectCast.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObjectChild.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResult.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResultCast.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResultChild.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResultImpl.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObjectDynamicValue.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObjectMemory.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObjectRegister.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObjectSyntheticFilter.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Core/ValueObjectVariable.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/DataFormatters/StringPrinter.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/DataFormatters/TypeFormat.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Expression/DWARFExpression.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Expression/FunctionCaller.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Expression/IRDynamicChecks.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Expression/IRExecutionUnit.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Expression/IRInterpreter.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Expression/IRMemoryMap.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Expression/LLVMUserExpression.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Expression/Materializer.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Expression/REPL.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Expression/UserExpression.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Expression/UtilityFunction.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/Editline.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/File.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/FileCache.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/Host.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/HostProcess.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/HostThread.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/LockFileBase.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/MainLoop.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/MonitoringProcessLauncher.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/NativeRegisterContext.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/NativeWatchpointList.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/PipeBase.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/Socket.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/Symbols.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/TCPSocket.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/ThreadLauncher.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/common/UDPSocket.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/freebsd/Host.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/netbsd/Host.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/openbsd/Host.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/posix/DomainSocket.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/posix/FileSystem.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/posix/HostProcessPosix.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/posix/HostThreadPosix.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/posix/LockFilePosix.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/posix/PipePosix.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/posix/ProcessLauncherPosix.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Host/posix/ProcessLauncherPosixFork.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Initialization/SystemInitializerCommon.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/Args.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/CommandInterpreter.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/CommandObject.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/CommandReturnObject.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupArchitecture.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupBoolean.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupFile.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupFormat.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupOutputFile.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupPlatform.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupString.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupUInt64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupUUID.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupValueObjectDisplay.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupVariable.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupWatchpoint.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValue.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArch.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArray.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueBoolean.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueChar.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueDictionary.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueEnumeration.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFileSpec.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFileSpecLIst.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFormat.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFormatEntity.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueLanguage.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValuePathMappings.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueProperties.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueRegex.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueSInt64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueString.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueUInt64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/OptionValueUUID.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/Options.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Interpreter/ScriptInterpreter.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ABIMacOSX_arm64.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm/ABISysV_arm.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ABISysV_hexagon.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-i386/ABISysV_i386.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips/ABISysV_mips.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-mips64/ABISysV_mips64.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc/ABISysV_ppc.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-ppc64/ABISysV_ppc64.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-s390x/ABISysV_s390x.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/HexagonDYLDRendezvous.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoParser.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoParser.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Go/GoUserExpression.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/AddressSanitizer/AddressSanitizerRuntime.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/InstrumentationRuntime/ThreadSanitizer/ThreadSanitizerRuntime.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/JITLoader/GDB/JITLoaderGDB.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/CxxStringTypes.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/Go/GoFormatterFunctions.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/Java/JavaFormatterFunctions.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/CF.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/Cocoa.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSArray.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSDictionary.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSError.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSException.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSSet.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Language/ObjC/NSString.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/Go/GoLanguageRuntime.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptScriptGroup.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/MemoryHistory/asan/MemoryHistoryASan.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Go/OperatingSystemGo.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Platform/NetBSD/PlatformNetBSD.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Platform/OpenBSD/PlatformOpenBSD.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/DarwinProcessLauncher.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/DarwinProcessLauncher.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/MachException.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/MachException.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeProcessDarwin.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeProcessDarwin.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadDarwin.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadDarwin.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadListDarwin.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Darwin/NativeThreadListDarwin.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessFreeBSD.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_arm64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_mips64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_powerpc.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/RegisterContextPOSIXProcessMonitor_x86.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeThreadNetBSD.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/NetBSD/NativeThreadNetBSD.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLLDB.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMemory.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/ThreadMemory.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/ThreadMemory.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindMacOSXFrameBackchain.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ThreadElfCore.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpParser.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpParser.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpTypes.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/MinidumpTypes.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/minidump/ProcessMinidump.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.h projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserOCaml.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAranges.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugPubnames.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDefines.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Symbol/ClangASTContext.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Symbol/CompactUnwindInfo.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Symbol/CompilerType.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Symbol/DWARFCallFrameInfo.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Symbol/JavaASTContext.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Symbol/ObjectFile.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Symbol/SymbolContext.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Symbol/Symtab.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Symbol/Type.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Symbol/Variable.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/Language.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/LanguageRuntime.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/Memory.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/ModuleCache.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/ObjCLanguageRuntime.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/PathMappingList.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/Platform.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/Process.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/ProcessLaunchInfo.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/RegisterContext.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/StackFrame.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/StopInfo.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/Target.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/TargetList.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/Thread.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallFunction.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/ThreadPlanTracer.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Target/ThreadSpec.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Utility/JSON.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Utility/SelectHelper.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Utility/UUID.cpp projects/clang500-import/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdBase.cpp projects/clang500-import/contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdData.h projects/clang500-import/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriver.cpp projects/clang500-import/contrib/llvm/tools/lldb/tools/lldb-mi/MIDriverBase.cpp projects/clang500-import/contrib/llvm/tools/lldb/tools/lldb-server/Acceptor.cpp projects/clang500-import/contrib/llvm/tools/lldb/tools/lldb-server/Acceptor.h projects/clang500-import/contrib/llvm/tools/lldb/tools/lldb-server/lldb-gdbserver.cpp projects/clang500-import/contrib/llvm/tools/lldb/tools/lldb-server/lldb-platform.cpp projects/clang500-import/contrib/llvm/tools/lli/RemoteJITUtils.h projects/clang500-import/contrib/llvm/tools/llvm-ar/llvm-ar.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/LLVMOutputStyle.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/PrettyCompilandDumper.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/PrettyFunctionDumper.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/llvm-pdbdump.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/llvm-pdbdump.h projects/clang500-import/contrib/llvm/tools/llvm-readobj/COFFDumper.cpp projects/clang500-import/contrib/llvm/tools/llvm-readobj/llvm-readobj.cpp projects/clang500-import/contrib/llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp projects/clang500-import/contrib/llvm/tools/opt/opt.cpp projects/clang500-import/contrib/llvm/utils/TableGen/CodeGenInstruction.cpp projects/clang500-import/contrib/llvm/utils/TableGen/SubtargetEmitter.cpp projects/clang500-import/contrib/llvm/utils/TableGen/X86RecognizableInstr.cpp projects/clang500-import/contrib/llvm/utils/TableGen/X86RecognizableInstr.h projects/clang500-import/lib/clang/include/clang/Basic/Version.inc projects/clang500-import/lib/clang/include/lld/Config/Version.inc projects/clang500-import/lib/clang/include/llvm/Support/VCSRevision.h projects/clang500-import/lib/clang/liblldb/Makefile projects/clang500-import/lib/clang/libllvm/Makefile projects/clang500-import/usr.bin/clang/lld/Makefile Directory Properties: projects/clang500-import/contrib/compiler-rt/ (props changed) projects/clang500-import/contrib/libc++/ (props changed) projects/clang500-import/contrib/llvm/ (props changed) projects/clang500-import/contrib/llvm/tools/clang/ (props changed) projects/clang500-import/contrib/llvm/tools/lld/ (props changed) projects/clang500-import/contrib/llvm/tools/lldb/ (props changed) Modified: projects/clang500-import/contrib/compiler-rt/include/xray/xray_interface.h ============================================================================== --- projects/clang500-import/contrib/compiler-rt/include/xray/xray_interface.h Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/include/xray/xray_interface.h Tue May 16 21:50:29 2017 (r318384) @@ -1,4 +1,4 @@ -//===-- xray_interface.h ----------------------------------------*- C++ -*-===// +//===- xray_interface.h -----------------------------------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // @@ -11,11 +11,12 @@ // // APIs for controlling XRay functionality explicitly. //===----------------------------------------------------------------------===// + #ifndef XRAY_XRAY_INTERFACE_H #define XRAY_XRAY_INTERFACE_H +#include #include -#include extern "C" { @@ -25,6 +26,7 @@ enum XRayEntryType { EXIT = 1, TAIL = 2, LOG_ARGS_ENTRY = 3, + CUSTOM_EVENT = 4, }; /// Provide a function to invoke for when instrumentation points are hit. This @@ -64,6 +66,9 @@ extern int __xray_set_handler_arg1(void /// Returns 1 on success, 0 on error. extern int __xray_remove_handler_arg1(); +/// Provide a function to invoke when XRay encounters a custom event. +extern int __xray_set_customevent_handler(void (*entry)(void*, std::size_t)); + enum XRayPatchingStatus { NOT_INITIALIZED = 0, SUCCESS = 1, @@ -96,6 +101,6 @@ extern uintptr_t __xray_function_address /// encounter errors (when there are no instrumented functions, etc.). extern size_t __xray_max_function_id(); -} +} // end extern "C" -#endif +#endif // XRAY_XRAY_INTERFACE_H Modified: projects/clang500-import/contrib/compiler-rt/lib/asan/asan_allocator.h ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/asan/asan_allocator.h Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/asan/asan_allocator.h Tue May 16 21:50:29 2017 (r318384) @@ -161,10 +161,17 @@ typedef FlatByteMap ByteMap typedef TwoLevelByteMap<(kNumRegions >> 12), 1 << 12> ByteMap; # endif typedef CompactSizeClassMap SizeClassMap; -typedef SizeClassAllocator32<0, SANITIZER_MMAP_RANGE_SIZE, 16, - SizeClassMap, kRegionSizeLog, - ByteMap, - AsanMapUnmapCallback> PrimaryAllocator; +struct AP32 { + static const uptr kSpaceBeg = 0; + static const u64 kSpaceSize = SANITIZER_MMAP_RANGE_SIZE; + static const uptr kMetadataSize = 16; + typedef __asan::SizeClassMap SizeClassMap; + static const uptr kRegionSizeLog = __asan::kRegionSizeLog; + typedef __asan::ByteMap ByteMap; + typedef AsanMapUnmapCallback MapUnmapCallback; + static const uptr kFlags = 0; +}; +typedef SizeClassAllocator32 PrimaryAllocator; #endif // SANITIZER_CAN_USE_ALLOCATOR64 static const uptr kNumberOfSizeClasses = SizeClassMap::kNumClasses; Modified: projects/clang500-import/contrib/compiler-rt/lib/asan/asan_flags.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/asan/asan_flags.cc Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/asan/asan_flags.cc Tue May 16 21:50:29 2017 (r318384) @@ -194,6 +194,10 @@ void InitializeFlags() { Report("WARNING: strchr* interceptors are enabled even though " "replace_str=0. Use intercept_strchr=0 to disable them."); } + if (!f->replace_str && common_flags()->intercept_strndup) { + Report("WARNING: strndup* interceptors are enabled even though " + "replace_str=0. Use intercept_strndup=0 to disable them."); + } } } // namespace __asan Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/adddf3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/adddf3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/adddf3.c Tue May 16 21:50:29 2017 (r318384) @@ -15,8 +15,13 @@ #define DOUBLE_PRECISION #include "fp_add_impl.inc" -ARM_EABI_FNALIAS(dadd, adddf3) - COMPILER_RT_ABI double __adddf3(double a, double b){ return __addXf3__(a, b); } + +#if defined(__ARM_EABI__) +AEABI_RTABI double __aeabi_dadd(double a, double b) { + return __adddf3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/addsf3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/addsf3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/addsf3.c Tue May 16 21:50:29 2017 (r318384) @@ -15,8 +15,13 @@ #define SINGLE_PRECISION #include "fp_add_impl.inc" -ARM_EABI_FNALIAS(fadd, addsf3) - COMPILER_RT_ABI float __addsf3(float a, float b) { return __addXf3__(a, b); } + +#if defined(__ARM_EABI__) +AEABI_RTABI float __aeabi_fadd(float a, float b) { + return __addsf3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmpeq_check_nan.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmpeq_check_nan.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_cdcmpeq_check_nan.c Tue May 16 21:50:29 2017 (r318384) @@ -8,9 +8,9 @@ //===----------------------------------------------------------------------===// #include +#include "../int_lib.h" -__attribute__((pcs("aapcs"))) -__attribute__((visibility("hidden"))) +AEABI_RTABI __attribute__((visibility("hidden"))) int __aeabi_cdcmpeq_check_nan(double a, double b) { return __builtin_isnan(a) || __builtin_isnan(b); } Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_cfcmpeq_check_nan.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_cfcmpeq_check_nan.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_cfcmpeq_check_nan.c Tue May 16 21:50:29 2017 (r318384) @@ -8,9 +8,9 @@ //===----------------------------------------------------------------------===// #include +#include "../int_lib.h" -__attribute__((pcs("aapcs"))) -__attribute__((visibility("hidden"))) +AEABI_RTABI __attribute__((visibility("hidden"))) int __aeabi_cfcmpeq_check_nan(float a, float b) { return __builtin_isnan(a) || __builtin_isnan(b); } Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_div0.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_div0.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_div0.c Tue May 16 21:50:29 2017 (r318384) @@ -26,16 +26,18 @@ * line. */ +#include "../int_lib.h" + /* provide an unused declaration to pacify pendantic compilation */ extern unsigned char declaration; #if defined(__ARM_EABI__) -int __attribute__((weak)) __attribute__((visibility("hidden"))) +AEABI_RTABI int __attribute__((weak)) __attribute__((visibility("hidden"))) __aeabi_idiv0(int return_value) { return return_value; } -long long __attribute__((weak)) __attribute__((visibility("hidden"))) +AEABI_RTABI long long __attribute__((weak)) __attribute__((visibility("hidden"))) __aeabi_ldiv0(long long return_value) { return return_value; } Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_drsub.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_drsub.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_drsub.c Tue May 16 21:50:29 2017 (r318384) @@ -10,10 +10,10 @@ #define DOUBLE_PRECISION #include "../fp_lib.h" -COMPILER_RT_ABI fp_t +AEABI_RTABI fp_t __aeabi_dsub(fp_t, fp_t); -COMPILER_RT_ABI fp_t +AEABI_RTABI fp_t __aeabi_drsub(fp_t a, fp_t b) { return __aeabi_dsub(b, a); } Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_frsub.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_frsub.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/arm/aeabi_frsub.c Tue May 16 21:50:29 2017 (r318384) @@ -10,10 +10,10 @@ #define SINGLE_PRECISION #include "../fp_lib.h" -COMPILER_RT_ABI fp_t +AEABI_RTABI fp_t __aeabi_fsub(fp_t, fp_t); -COMPILER_RT_ABI fp_t +AEABI_RTABI fp_t __aeabi_frsub(fp_t a, fp_t b) { return __aeabi_fsub(b, a); } Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/ashldi3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/ashldi3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/ashldi3.c Tue May 16 21:50:29 2017 (r318384) @@ -18,8 +18,6 @@ /* Precondition: 0 <= b < bits_in_dword */ -ARM_EABI_FNALIAS(llsl, ashldi3) - COMPILER_RT_ABI di_int __ashldi3(di_int a, si_int b) { @@ -41,3 +39,10 @@ __ashldi3(di_int a, si_int b) } return result.all; } + +#if defined(__ARM_EABI__) +AEABI_RTABI di_int __aeabi_llsl(di_int a, si_int b) { + return __ashldi3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/ashrdi3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/ashrdi3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/ashrdi3.c Tue May 16 21:50:29 2017 (r318384) @@ -18,8 +18,6 @@ /* Precondition: 0 <= b < bits_in_dword */ -ARM_EABI_FNALIAS(lasr, ashrdi3) - COMPILER_RT_ABI di_int __ashrdi3(di_int a, si_int b) { @@ -42,3 +40,10 @@ __ashrdi3(di_int a, si_int b) } return result.all; } + +#if defined(__ARM_EABI__) +AEABI_RTABI di_int __aeabi_lasr(di_int a, si_int b) { + return __ashrdi3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/assembly.h ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/assembly.h Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/assembly.h Tue May 16 21:50:29 2017 (r318384) @@ -44,7 +44,8 @@ #endif #define CONST_SECTION .section .rodata -#if defined(__GNU__) || defined(__ANDROID__) || defined(__FreeBSD__) +#if defined(__GNU__) || defined(__FreeBSD__) || defined(__Fuchsia__) || \ + defined(__linux__) #define NO_EXEC_STACK_DIRECTIVE .section .note.GNU-stack,"",%progbits #else #define NO_EXEC_STACK_DIRECTIVE Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/comparedf2.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/comparedf2.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/comparedf2.c Tue May 16 21:50:29 2017 (r318384) @@ -113,8 +113,6 @@ __gedf2(fp_t a, fp_t b) { } } -ARM_EABI_FNALIAS(dcmpun, unorddf2) - COMPILER_RT_ABI int __unorddf2(fp_t a, fp_t b) { const rep_t aAbs = toRep(a) & absMask; @@ -144,3 +142,9 @@ __gtdf2(fp_t a, fp_t b) { return __gedf2(a, b); } +#if defined(__ARM_EABI__) +AEABI_RTABI int __aeabi_dcmpun(fp_t a, fp_t b) { + return __unorddf2(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/comparesf2.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/comparesf2.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/comparesf2.c Tue May 16 21:50:29 2017 (r318384) @@ -113,8 +113,6 @@ __gesf2(fp_t a, fp_t b) { } } -ARM_EABI_FNALIAS(fcmpun, unordsf2) - COMPILER_RT_ABI int __unordsf2(fp_t a, fp_t b) { const rep_t aAbs = toRep(a) & absMask; @@ -143,3 +141,10 @@ COMPILER_RT_ABI enum GE_RESULT __gtsf2(fp_t a, fp_t b) { return __gesf2(a, b); } + +#if defined(__ARM_EABI__) +AEABI_RTABI int __aeabi_fcmpun(fp_t a, fp_t b) { + return __unordsf2(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/divdf3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/divdf3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/divdf3.c Tue May 16 21:50:29 2017 (r318384) @@ -19,8 +19,6 @@ #define DOUBLE_PRECISION #include "fp_lib.h" -ARM_EABI_FNALIAS(ddiv, divdf3) - COMPILER_RT_ABI fp_t __divdf3(fp_t a, fp_t b) { @@ -183,3 +181,10 @@ __divdf3(fp_t a, fp_t b) { return result; } } + +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_ddiv(fp_t a, fp_t b) { + return __divdf3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/divsf3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/divsf3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/divsf3.c Tue May 16 21:50:29 2017 (r318384) @@ -19,8 +19,6 @@ #define SINGLE_PRECISION #include "fp_lib.h" -ARM_EABI_FNALIAS(fdiv, divsf3) - COMPILER_RT_ABI fp_t __divsf3(fp_t a, fp_t b) { @@ -167,3 +165,10 @@ __divsf3(fp_t a, fp_t b) { return fromRep(absResult | quotientSign); } } + +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_fdiv(fp_t a, fp_t b) { + return __divsf3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/divsi3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/divsi3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/divsi3.c Tue May 16 21:50:29 2017 (r318384) @@ -16,8 +16,6 @@ /* Returns: a / b */ -ARM_EABI_FNALIAS(idiv, divsi3) - COMPILER_RT_ABI si_int __divsi3(si_int a, si_int b) { @@ -35,3 +33,10 @@ __divsi3(si_int a, si_int b) */ return ((su_int)a/(su_int)b ^ s_a) - s_a; /* negate if s_a == -1 */ } + +#if defined(__ARM_EABI__) +AEABI_RTABI si_int __aeabi_idiv(si_int a, si_int b) { + return __divsi3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/extendhfsf2.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/extendhfsf2.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/extendhfsf2.c Tue May 16 21:50:29 2017 (r318384) @@ -12,8 +12,6 @@ #define DST_SINGLE #include "fp_extend_impl.inc" -ARM_EABI_FNALIAS(h2f, extendhfsf2) - // Use a forwarding definition and noinline to implement a poor man's alias, // as there isn't a good cross-platform way of defining one. COMPILER_RT_ABI NOINLINE float __extendhfsf2(uint16_t a) { @@ -23,3 +21,10 @@ COMPILER_RT_ABI NOINLINE float __extendh COMPILER_RT_ABI float __gnu_h2f_ieee(uint16_t a) { return __extendhfsf2(a); } + +#if defined(__ARM_EABI__) +AEABI_RTABI float __aeabi_h2f(uint16_t a) { + return __extendhfsf2(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/extendsfdf2.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/extendsfdf2.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/extendsfdf2.c Tue May 16 21:50:29 2017 (r318384) @@ -12,8 +12,13 @@ #define DST_DOUBLE #include "fp_extend_impl.inc" -ARM_EABI_FNALIAS(f2d, extendsfdf2) - COMPILER_RT_ABI double __extendsfdf2(float a) { return __extendXfYf2__(a); } + +#if defined(__ARM_EABI__) +AEABI_RTABI double __aeabi_f2d(float a) { + return __extendsfdf2(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/fixdfdi.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/fixdfdi.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/fixdfdi.c Tue May 16 21:50:29 2017 (r318384) @@ -10,7 +10,6 @@ #define DOUBLE_PRECISION #include "fp_lib.h" -ARM_EABI_FNALIAS(d2lz, fixdfdi) #ifndef __SOFT_FP__ /* Support for systems that have hardware floating-point; can set the invalid @@ -44,3 +43,15 @@ __fixdfdi(fp_t a) { } #endif + +#if defined(__ARM_EABI__) +AEABI_RTABI di_int +#if defined(__SOFT_FP__) +__aeabi_d2lz(fp_t a) { +#else +__aeabi_d2lz(double a) { +#endif + return __fixdfdi(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/fixdfsi.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/fixdfsi.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/fixdfsi.c Tue May 16 21:50:29 2017 (r318384) @@ -14,9 +14,14 @@ typedef si_int fixint_t; typedef su_int fixuint_t; #include "fp_fixint_impl.inc" -ARM_EABI_FNALIAS(d2iz, fixdfsi) - COMPILER_RT_ABI si_int __fixdfsi(fp_t a) { return __fixint(a); } + +#if defined(__ARM_EABI__) +AEABI_RTABI si_int __aeabi_d2iz(fp_t a) { + return __fixdfsi(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/fixsfdi.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/fixsfdi.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/fixsfdi.c Tue May 16 21:50:29 2017 (r318384) @@ -11,8 +11,6 @@ #define SINGLE_PRECISION #include "fp_lib.h" -ARM_EABI_FNALIAS(f2lz, fixsfdi) - #ifndef __SOFT_FP__ /* Support for systems that have hardware floating-point; can set the invalid * flag as a side-effect of computation. @@ -45,3 +43,15 @@ __fixsfdi(fp_t a) { } #endif + +#if defined(__ARM_EABI__) +AEABI_RTABI di_int +#if defined(__SOFT_FP__) +__aeabi_f2lz(fp_t a) { +#else +__aeabi_f2lz(float a) { +#endif + return __fixsfdi(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/fixsfsi.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/fixsfsi.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/fixsfsi.c Tue May 16 21:50:29 2017 (r318384) @@ -14,9 +14,14 @@ typedef si_int fixint_t; typedef su_int fixuint_t; #include "fp_fixint_impl.inc" -ARM_EABI_FNALIAS(f2iz, fixsfsi) - COMPILER_RT_ABI si_int __fixsfsi(fp_t a) { return __fixint(a); } + +#if defined(__ARM_EABI__) +AEABI_RTABI si_int __aeabi_f2iz(fp_t a) { + return __fixsfsi(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunsdfdi.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunsdfdi.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunsdfdi.c Tue May 16 21:50:29 2017 (r318384) @@ -11,8 +11,6 @@ #define DOUBLE_PRECISION #include "fp_lib.h" -ARM_EABI_FNALIAS(d2ulz, fixunsdfdi) - #ifndef __SOFT_FP__ /* Support for systems that have hardware floating-point; can set the invalid * flag as a side-effect of computation. @@ -42,3 +40,15 @@ __fixunsdfdi(fp_t a) { } #endif + +#if defined(__ARM_EABI__) +AEABI_RTABI du_int +#if defined(__SOFT_FP__) +__aeabi_d2ulz(fp_t a) { +#else +__aeabi_d2ulz(double a) { +#endif + return __fixunsdfdi(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunsdfsi.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunsdfsi.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunsdfsi.c Tue May 16 21:50:29 2017 (r318384) @@ -13,9 +13,14 @@ typedef su_int fixuint_t; #include "fp_fixuint_impl.inc" -ARM_EABI_FNALIAS(d2uiz, fixunsdfsi) - COMPILER_RT_ABI su_int __fixunsdfsi(fp_t a) { return __fixuint(a); } + +#if defined(__ARM_EABI__) +AEABI_RTABI su_int __aeabi_d2uiz(fp_t a) { + return __fixunsdfsi(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunssfdi.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunssfdi.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunssfdi.c Tue May 16 21:50:29 2017 (r318384) @@ -11,8 +11,6 @@ #define SINGLE_PRECISION #include "fp_lib.h" -ARM_EABI_FNALIAS(f2ulz, fixunssfdi) - #ifndef __SOFT_FP__ /* Support for systems that have hardware floating-point; can set the invalid * flag as a side-effect of computation. @@ -43,3 +41,15 @@ __fixunssfdi(fp_t a) { } #endif + +#if defined(__ARM_EABI__) +AEABI_RTABI du_int +#if defined(__SOFT_FP__) +__aeabi_f2ulz(fp_t a) { +#else +__aeabi_f2ulz(float a) { +#endif + return __fixunssfdi(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunssfsi.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunssfsi.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/fixunssfsi.c Tue May 16 21:50:29 2017 (r318384) @@ -17,9 +17,14 @@ typedef su_int fixuint_t; #include "fp_fixuint_impl.inc" -ARM_EABI_FNALIAS(f2uiz, fixunssfsi) - COMPILER_RT_ABI su_int __fixunssfsi(fp_t a) { return __fixuint(a); } + +#if defined(__ARM_EABI__) +AEABI_RTABI su_int __aeabi_f2uiz(fp_t a) { + return __fixunssfsi(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdidf.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdidf.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdidf.c Tue May 16 21:50:29 2017 (r318384) @@ -22,8 +22,6 @@ /* seee eeee eeee mmmm mmmm mmmm mmmm mmmm | mmmm mmmm mmmm mmmm mmmm mmmm mmmm mmmm */ -ARM_EABI_FNALIAS(l2d, floatdidf) - #ifndef __SOFT_FP__ /* Support for systems that have hardware floating-point; we'll set the inexact flag * as a side-effect of this computation. @@ -105,3 +103,10 @@ __floatdidf(di_int a) return fb.f; } #endif + +#if defined(__AEABI__) +AEABI_RTABI double __aeabi_l2d(di_int a) { + return __floatdidf(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdisf.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdisf.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdisf.c Tue May 16 21:50:29 2017 (r318384) @@ -22,8 +22,6 @@ #include "int_lib.h" -ARM_EABI_FNALIAS(l2f, floatdisf) - COMPILER_RT_ABI float __floatdisf(di_int a) { @@ -78,3 +76,10 @@ __floatdisf(di_int a) ((su_int)a & 0x007FFFFF); /* mantissa */ return fb.f; } + +#if defined(__ARM_EABI__) +AEABI_RTABI float __aeabi_l2f(di_int a) { + return __floatdisf(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/floatsidf.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/floatsidf.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/floatsidf.c Tue May 16 21:50:29 2017 (r318384) @@ -18,8 +18,6 @@ #include "int_lib.h" -ARM_EABI_FNALIAS(i2d, floatsidf) - COMPILER_RT_ABI fp_t __floatsidf(int a) { @@ -51,3 +49,10 @@ __floatsidf(int a) { // Insert the sign bit and return return fromRep(result | sign); } + +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_i2d(int a) { + return __floatsidf(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/floatsisf.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/floatsisf.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/floatsisf.c Tue May 16 21:50:29 2017 (r318384) @@ -18,8 +18,6 @@ #include "int_lib.h" -ARM_EABI_FNALIAS(i2f, floatsisf) - COMPILER_RT_ABI fp_t __floatsisf(int a) { @@ -57,3 +55,10 @@ __floatsisf(int a) { // Insert the sign bit and return return fromRep(result | sign); } + +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_i2f(int a) { + return __floatsisf(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/floatundidf.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/floatundidf.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/floatundidf.c Tue May 16 21:50:29 2017 (r318384) @@ -22,8 +22,6 @@ #include "int_lib.h" -ARM_EABI_FNALIAS(ul2d, floatundidf) - #ifndef __SOFT_FP__ /* Support for systems that have hardware floating-point; we'll set the inexact flag * as a side-effect of this computation. @@ -104,3 +102,10 @@ __floatundidf(du_int a) return fb.f; } #endif + +#if defined(__ARM_EABI__) +AEABI_RTABI double __aeabi_ul2d(du_int a) { + return __floatundidf(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/floatundisf.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/floatundisf.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/floatundisf.c Tue May 16 21:50:29 2017 (r318384) @@ -22,8 +22,6 @@ #include "int_lib.h" -ARM_EABI_FNALIAS(ul2f, floatundisf) - COMPILER_RT_ABI float __floatundisf(du_int a) { @@ -75,3 +73,10 @@ __floatundisf(du_int a) ((su_int)a & 0x007FFFFF); /* mantissa */ return fb.f; } + +#if defined(__ARM_EABI__) +AEABI_RTABI float __aeabi_ul2f(du_int a) { + return __floatundisf(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/floatunsidf.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/floatunsidf.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/floatunsidf.c Tue May 16 21:50:29 2017 (r318384) @@ -18,8 +18,6 @@ #include "int_lib.h" -ARM_EABI_FNALIAS(ui2d, floatunsidf) - COMPILER_RT_ABI fp_t __floatunsidf(unsigned int a) { @@ -40,3 +38,10 @@ __floatunsidf(unsigned int a) { result += (rep_t)(exponent + exponentBias) << significandBits; return fromRep(result); } + +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_ui2d(unsigned int a) { + return __floatunsidf(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/floatunsisf.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/floatunsisf.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/floatunsisf.c Tue May 16 21:50:29 2017 (r318384) @@ -18,8 +18,6 @@ #include "int_lib.h" -ARM_EABI_FNALIAS(ui2f, floatunsisf) - COMPILER_RT_ABI fp_t __floatunsisf(unsigned int a) { @@ -48,3 +46,10 @@ __floatunsisf(unsigned int a) { result += (rep_t)(exponent + exponentBias) << significandBits; return fromRep(result); } + +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_ui2f(unsigned int a) { + return __floatunsisf(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/int_lib.h ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/int_lib.h Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/int_lib.h Tue May 16 21:50:29 2017 (r318384) @@ -30,20 +30,19 @@ /* ABI macro definitions */ #if __ARM_EABI__ -# define ARM_EABI_FNALIAS(aeabi_name, name) \ - void __aeabi_##aeabi_name() __attribute__((alias("__" #name))); # if defined(COMPILER_RT_ARMHF_TARGET) || (!defined(__clang__) && \ defined(__GNUC__) && (__GNUC__ < 4 || __GNUC__ == 4 && __GNUC_MINOR__ < 5)) /* The pcs attribute was introduced in GCC 4.5.0 */ # define COMPILER_RT_ABI # else -# define COMPILER_RT_ABI __attribute__((pcs("aapcs"))) +# define COMPILER_RT_ABI __attribute__((__pcs__("aapcs"))) # endif #else -# define ARM_EABI_FNALIAS(aeabi_name, name) # define COMPILER_RT_ABI #endif +#define AEABI_RTABI __attribute__((__pcs__("aapcs"))) + #ifdef _MSC_VER #define ALWAYS_INLINE __forceinline #define NOINLINE __declspec(noinline) Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/lshrdi3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/lshrdi3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/lshrdi3.c Tue May 16 21:50:29 2017 (r318384) @@ -18,8 +18,6 @@ /* Precondition: 0 <= b < bits_in_dword */ -ARM_EABI_FNALIAS(llsr, lshrdi3) - COMPILER_RT_ABI di_int __lshrdi3(di_int a, si_int b) { @@ -41,3 +39,10 @@ __lshrdi3(di_int a, si_int b) } return result.all; } + +#if defined(__ARM_EABI__) +AEABI_RTABI di_int __aeabi_llsr(di_int a, si_int b) { + return __lshrdi3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/muldf3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/muldf3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/muldf3.c Tue May 16 21:50:29 2017 (r318384) @@ -15,8 +15,13 @@ #define DOUBLE_PRECISION #include "fp_mul_impl.inc" -ARM_EABI_FNALIAS(dmul, muldf3) - COMPILER_RT_ABI fp_t __muldf3(fp_t a, fp_t b) { return __mulXf3__(a, b); } + +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_dmul(fp_t a, fp_t b) { + return __muldf3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/muldi3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/muldi3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/muldi3.c Tue May 16 21:50:29 2017 (r318384) @@ -40,8 +40,6 @@ __muldsi3(su_int a, su_int b) /* Returns: a * b */ -ARM_EABI_FNALIAS(lmul, muldi3) - COMPILER_RT_ABI di_int __muldi3(di_int a, di_int b) { @@ -54,3 +52,10 @@ __muldi3(di_int a, di_int b) r.s.high += x.s.high * y.s.low + x.s.low * y.s.high; return r.all; } + +#if defined(__ARM_EABI__) +AEABI_RTABI di_int __aeabi_lmul(di_int a, di_int b) { + return __muldi3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/mulsf3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/mulsf3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/mulsf3.c Tue May 16 21:50:29 2017 (r318384) @@ -15,8 +15,13 @@ #define SINGLE_PRECISION #include "fp_mul_impl.inc" -ARM_EABI_FNALIAS(fmul, mulsf3) - COMPILER_RT_ABI fp_t __mulsf3(fp_t a, fp_t b) { return __mulXf3__(a, b); } + +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_fmul(fp_t a, fp_t b) { + return __mulsf3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/negdf2.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/negdf2.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/negdf2.c Tue May 16 21:50:29 2017 (r318384) @@ -14,9 +14,14 @@ #define DOUBLE_PRECISION #include "fp_lib.h" -ARM_EABI_FNALIAS(dneg, negdf2) - COMPILER_RT_ABI fp_t __negdf2(fp_t a) { return fromRep(toRep(a) ^ signBit); } + +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_dneg(fp_t a) { + return __negdf2(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/negsf2.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/negsf2.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/negsf2.c Tue May 16 21:50:29 2017 (r318384) @@ -14,9 +14,14 @@ #define SINGLE_PRECISION #include "fp_lib.h" -ARM_EABI_FNALIAS(fneg, negsf2) - COMPILER_RT_ABI fp_t __negsf2(fp_t a) { return fromRep(toRep(a) ^ signBit); } + +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_fneg(fp_t a) { + return __negsf2(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/subdf3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/subdf3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/subdf3.c Tue May 16 21:50:29 2017 (r318384) @@ -15,11 +15,15 @@ #define DOUBLE_PRECISION #include "fp_lib.h" -ARM_EABI_FNALIAS(dsub, subdf3) - // Subtraction; flip the sign bit of b and add. COMPILER_RT_ABI fp_t __subdf3(fp_t a, fp_t b) { return __adddf3(a, fromRep(toRep(b) ^ signBit)); } +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_dsub(fp_t a, fp_t b) { + return __subdf3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/subsf3.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/subsf3.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/subsf3.c Tue May 16 21:50:29 2017 (r318384) @@ -15,11 +15,15 @@ #define SINGLE_PRECISION #include "fp_lib.h" -ARM_EABI_FNALIAS(fsub, subsf3) - // Subtraction; flip the sign bit of b and add. COMPILER_RT_ABI fp_t __subsf3(fp_t a, fp_t b) { return __addsf3(a, fromRep(toRep(b) ^ signBit)); } +#if defined(__ARM_EABI__) +AEABI_RTABI fp_t __aeabi_fsub(fp_t a, fp_t b) { + return __subsf3(a, b); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/truncdfhf2.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/truncdfhf2.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/truncdfhf2.c Tue May 16 21:50:29 2017 (r318384) @@ -11,8 +11,13 @@ #define DST_HALF #include "fp_trunc_impl.inc" -ARM_EABI_FNALIAS(d2h, truncdfhf2) - COMPILER_RT_ABI uint16_t __truncdfhf2(double a) { return __truncXfYf2__(a); } + +#if defined(__ARM_EABI__) +AEABI_RTABI uint16_t __aeabi_d2h(double a) { + return __truncdfhf2(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/truncdfsf2.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/truncdfsf2.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/truncdfsf2.c Tue May 16 21:50:29 2017 (r318384) @@ -11,8 +11,13 @@ #define DST_SINGLE #include "fp_trunc_impl.inc" -ARM_EABI_FNALIAS(d2f, truncdfsf2) - COMPILER_RT_ABI float __truncdfsf2(double a) { return __truncXfYf2__(a); } + +#if defined(__ARM_EABI__) +AEABI_RTABI float __aeabi_d2f(double a) { + return __truncdfsf2(a); +} +#endif + Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/truncsfhf2.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/truncsfhf2.c Tue May 16 21:46:30 2017 (r318383) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/truncsfhf2.c Tue May 16 21:50:29 2017 (r318384) @@ -11,8 +11,6 @@ #define DST_HALF #include "fp_trunc_impl.inc" -ARM_EABI_FNALIAS(f2h, truncsfhf2) - // Use a forwarding definition and noinline to implement a poor man's alias, // as there isn't a good cross-platform way of defining one. COMPILER_RT_ABI NOINLINE uint16_t __truncsfhf2(float a) { @@ -22,3 +20,10 @@ COMPILER_RT_ABI NOINLINE uint16_t __trun COMPILER_RT_ABI uint16_t __gnu_f2h_ieee(float a) { *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Thu May 18 18:33:37 2017 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 10603D712B2 for ; Thu, 18 May 2017 18:33:37 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B01EB7C8; Thu, 18 May 2017 18:33:36 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v4IIXZC3066948; Thu, 18 May 2017 18:33:35 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v4IIXYTr066932; Thu, 18 May 2017 18:33:34 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201705181833.v4IIXYTr066932@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Thu, 18 May 2017 18:33:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r318477 - in projects/clang500-import: contrib/compiler-rt/lib/builtins contrib/libc++/include contrib/llvm/include/llvm/ADT contrib/llvm/include/llvm/Analysis contrib/llvm/include/llvm... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 May 2017 18:33:37 -0000 Author: dim Date: Thu May 18 18:33:33 2017 New Revision: 318477 URL: https://svnweb.freebsd.org/changeset/base/318477 Log: Merge llvm, clang, lld, lldb, compiler-rt and libc++ r303291, and update build glue. Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdidf.c projects/clang500-import/contrib/libc++/include/iterator projects/clang500-import/contrib/libc++/include/optional projects/clang500-import/contrib/llvm/include/llvm/ADT/APInt.h projects/clang500-import/contrib/llvm/include/llvm/ADT/BitVector.h projects/clang500-import/contrib/llvm/include/llvm/ADT/PostOrderIterator.h projects/clang500-import/contrib/llvm/include/llvm/ADT/PriorityWorklist.h projects/clang500-import/contrib/llvm/include/llvm/ADT/SCCIterator.h projects/clang500-import/contrib/llvm/include/llvm/ADT/Sequence.h projects/clang500-import/contrib/llvm/include/llvm/ADT/SetVector.h projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallBitVector.h projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallPtrSet.h projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallVector.h projects/clang500-import/contrib/llvm/include/llvm/ADT/SparseBitVector.h projects/clang500-import/contrib/llvm/include/llvm/ADT/SparseMultiSet.h projects/clang500-import/contrib/llvm/include/llvm/ADT/SparseSet.h projects/clang500-import/contrib/llvm/include/llvm/ADT/StringExtras.h projects/clang500-import/contrib/llvm/include/llvm/ADT/StringMap.h projects/clang500-import/contrib/llvm/include/llvm/ADT/StringRef.h projects/clang500-import/contrib/llvm/include/llvm/ADT/StringSet.h projects/clang500-import/contrib/llvm/include/llvm/ADT/TinyPtrVector.h projects/clang500-import/contrib/llvm/include/llvm/ADT/UniqueVector.h projects/clang500-import/contrib/llvm/include/llvm/Analysis/ProfileSummaryInfo.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/CVTypeVisitor.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/RandomAccessTypeVisitor.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFAttribute.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAranges.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDebugRangeList.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFFormValue.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFGdbIndex.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFRelocMap.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiStream.h projects/clang500-import/contrib/llvm/include/llvm/IR/IntrinsicsPowerPC.td projects/clang500-import/contrib/llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td projects/clang500-import/contrib/llvm/lib/Analysis/DependenceAnalysis.cpp projects/clang500-import/contrib/llvm/lib/Analysis/InlineCost.cpp projects/clang500-import/contrib/llvm/lib/Analysis/InstructionSimplify.cpp projects/clang500-import/contrib/llvm/lib/Analysis/ProfileSummaryInfo.cpp projects/clang500-import/contrib/llvm/lib/Analysis/ScalarEvolution.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/MachineVerifier.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/RegAllocGreedy.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SpillPlacement.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/StackColoring.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/TargetLoweringBase.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/TargetPassConfig.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/TargetRegisterInfo.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/CVTypeDumper.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/CVTypeVisitor.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/RandomAccessTypeVisitor.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/TypeStreamMerger.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/DWARF/DWARFContext.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/PDB/Native/PDBTypeServerHandler.cpp projects/clang500-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp projects/clang500-import/contrib/llvm/lib/Support/CrashRecoveryContext.cpp projects/clang500-import/contrib/llvm/lib/Support/Unix/Path.inc projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.h projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIInstrInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/VOP3Instructions.td projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMInstructionSelector.cpp projects/clang500-import/contrib/llvm/lib/Target/ARM/Thumb1FrameLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/WebAssembly/WebAssemblyRegColoring.cpp projects/clang500-import/contrib/llvm/lib/Target/WebAssembly/known_gcc_test_failures.txt projects/clang500-import/contrib/llvm/lib/Target/X86/X86.td projects/clang500-import/contrib/llvm/lib/Target/X86/X86FixupLEAs.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstructionSelector.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86LegalizerInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86Subtarget.h projects/clang500-import/contrib/llvm/lib/Target/X86/X86TargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86TargetTransformInfo.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Coroutines/CoroFrame.cpp projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstCombineInternal.h projects/clang500-import/contrib/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/LICM.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/NewGVN.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/Reassociate.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/Decl.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/SourceManager.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Frontend/ASTUnit.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/Sema.h projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ASTDumper.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/Decl.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/DeclBase.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ODRHash.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Driver/ToolChains/MSVC.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Frontend/ASTUnit.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Headers/xmmintrin.h projects/clang500-import/contrib/llvm/tools/clang/lib/Lex/Lexer.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/Sema.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Sema/SemaLookup.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTReader.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/Relocations.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/Relocations.h projects/clang500-import/contrib/llvm/tools/lld/ELF/Thunks.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/Thunks.h projects/clang500-import/contrib/llvm/tools/lld/ELF/Writer.cpp projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContext.h projects/clang500-import/contrib/llvm/tools/lldb/source/Breakpoint/Breakpoint.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h projects/clang500-import/contrib/llvm/tools/lldb/source/Symbol/SymbolContext.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/Analyze.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/LLVMOutputStyle.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/PdbYaml.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/YamlTypeDumper.cpp projects/clang500-import/contrib/llvm/utils/TableGen/AsmMatcherEmitter.cpp projects/clang500-import/contrib/llvm/utils/TableGen/GlobalISelEmitter.cpp projects/clang500-import/lib/clang/include/clang/Basic/Version.inc projects/clang500-import/lib/clang/include/lld/Config/Version.inc projects/clang500-import/lib/clang/include/llvm/Support/VCSRevision.h Directory Properties: projects/clang500-import/contrib/compiler-rt/ (props changed) projects/clang500-import/contrib/libc++/ (props changed) projects/clang500-import/contrib/llvm/ (props changed) projects/clang500-import/contrib/llvm/tools/clang/ (props changed) projects/clang500-import/contrib/llvm/tools/lld/ (props changed) projects/clang500-import/contrib/llvm/tools/lldb/ (props changed) Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdidf.c ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdidf.c Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/floatdidf.c Thu May 18 18:33:33 2017 (r318477) @@ -104,7 +104,7 @@ __floatdidf(di_int a) } #endif -#if defined(__AEABI__) +#if defined(__ARM_EABI__) AEABI_RTABI double __aeabi_l2d(di_int a) { return __floatdidf(a); } Modified: projects/clang500-import/contrib/libc++/include/iterator ============================================================================== --- projects/clang500-import/contrib/libc++/include/iterator Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/libc++/include/iterator Thu May 18 18:33:33 2017 (r318477) @@ -64,14 +64,23 @@ struct forward_iterator_tag : publ struct bidirectional_iterator_tag : public forward_iterator_tag {}; struct random_access_iterator_tag : public bidirectional_iterator_tag {}; +// 27.4.3, iterator operations // extension: second argument not conforming to C++03 -template -void advance(InputIterator& i, +template // constexpr in C++17 + constexpr void advance(InputIterator& i, typename iterator_traits::difference_type n); -template -typename iterator_traits::difference_type -distance(InputIterator first, InputIterator last); +template // constexpr in C++17 + constexpr typename iterator_traits::difference_type + distance(InputIterator first, InputIterator last); + +template // constexpr in C++17 + constexpr InputIterator next(InputIterator x, +typename iterator_traits::difference_type n = 1); + +template // constexpr in C++17 + constexpr BidirectionalIterator prev(BidirectionalIterator x, + typename iterator_traits::difference_type n = 1); template class reverse_iterator @@ -529,7 +538,7 @@ struct _LIBCPP_TEMPLATE_VIS iterator }; template -inline _LIBCPP_INLINE_VISIBILITY +inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX14 void __advance(_InputIter& __i, typename iterator_traits<_InputIter>::difference_type __n, input_iterator_tag) { @@ -538,7 +547,7 @@ void __advance(_InputIter& __i, } template -inline _LIBCPP_INLINE_VISIBILITY +inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX14 void __advance(_BiDirIter& __i, typename iterator_traits<_BiDirIter>::difference_type __n, bidirectional_iterator_tag) { @@ -551,7 +560,7 @@ void __advance(_BiDirIter& __i, } template -inline _LIBCPP_INLINE_VISIBILITY +inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX14 void __advance(_RandIter& __i, typename iterator_traits<_RandIter>::difference_type __n, random_access_iterator_tag) { @@ -559,7 +568,7 @@ void __advance(_RandIter& __i, } template -inline _LIBCPP_INLINE_VISIBILITY +inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX14 void advance(_InputIter& __i, typename iterator_traits<_InputIter>::difference_type __n) { @@ -567,7 +576,7 @@ void advance(_InputIter& __i, } template -inline _LIBCPP_INLINE_VISIBILITY +inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX14 typename iterator_traits<_InputIter>::difference_type __distance(_InputIter __first, _InputIter __last, input_iterator_tag) { @@ -578,7 +587,7 @@ __distance(_InputIter __first, _InputIte } template -inline _LIBCPP_INLINE_VISIBILITY +inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX14 typename iterator_traits<_RandIter>::difference_type __distance(_RandIter __first, _RandIter __last, random_access_iterator_tag) { @@ -586,7 +595,7 @@ __distance(_RandIter __first, _RandIter } template -inline _LIBCPP_INLINE_VISIBILITY +inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX14 typename iterator_traits<_InputIter>::difference_type distance(_InputIter __first, _InputIter __last) { @@ -594,7 +603,7 @@ distance(_InputIter __first, _InputIter } template -inline _LIBCPP_INLINE_VISIBILITY +inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX14 _InputIter next(_InputIter __x, typename iterator_traits<_InputIter>::difference_type __n = 1, @@ -605,7 +614,7 @@ next(_InputIter __x, } template -inline _LIBCPP_INLINE_VISIBILITY +inline _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_AFTER_CXX14 _BidiretionalIter prev(_BidiretionalIter __x, typename iterator_traits<_BidiretionalIter>::difference_type __n = 1, Modified: projects/clang500-import/contrib/libc++/include/optional ============================================================================== --- projects/clang500-import/contrib/libc++/include/optional Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/libc++/include/optional Thu May 18 18:33:33 2017 (r318477) @@ -599,8 +599,8 @@ private: public: _LIBCPP_INLINE_VISIBILITY constexpr optional() noexcept {} - _LIBCPP_INLINE_VISIBILITY optional(const optional&) = default; - _LIBCPP_INLINE_VISIBILITY optional(optional&&) = default; + _LIBCPP_INLINE_VISIBILITY constexpr optional(const optional&) = default; + _LIBCPP_INLINE_VISIBILITY constexpr optional(optional&&) = default; _LIBCPP_INLINE_VISIBILITY constexpr optional(nullopt_t) noexcept {} template #include @@ -26,6 +27,50 @@ namespace llvm { +/// ForwardIterator for the bits that are set. +/// Iterators get invalidated when resize / reserve is called. +template class const_set_bits_iterator_impl { + const BitVectorT &Parent; + int Current = 0; + + void advance() { + assert(Current != -1 && "Trying to advance past end."); + Current = Parent.find_next(Current); + } + +public: + const_set_bits_iterator_impl(const BitVectorT &Parent, int Current) + : Parent(Parent), Current(Current) {} + explicit const_set_bits_iterator_impl(const BitVectorT &Parent) + : const_set_bits_iterator_impl(Parent, Parent.find_first()) {} + const_set_bits_iterator_impl(const const_set_bits_iterator_impl &) = default; + + const_set_bits_iterator_impl operator++(int) { + auto Prev = *this; + advance(); + return Prev; + } + + const_set_bits_iterator_impl &operator++() { + advance(); + return *this; + } + + unsigned operator*() const { return Current; } + + bool operator==(const const_set_bits_iterator_impl &Other) const { + assert(&Parent == &Other.Parent && + "Comparing iterators from different BitVectors"); + return Current == Other.Current; + } + + bool operator!=(const const_set_bits_iterator_impl &Other) const { + assert(&Parent == &Other.Parent && + "Comparing iterators from different BitVectors"); + return Current != Other.Current; + } +}; + class BitVector { typedef unsigned long BitWord; @@ -73,6 +118,18 @@ public: } }; + typedef const_set_bits_iterator_impl const_set_bits_iterator; + typedef const_set_bits_iterator set_iterator; + + const_set_bits_iterator set_bits_begin() const { + return const_set_bits_iterator(*this); + } + const_set_bits_iterator set_bits_end() const { + return const_set_bits_iterator(*this, -1); + } + iterator_range set_bits() const { + return make_range(set_bits_begin(), set_bits_end()); + } /// BitVector default ctor - Creates an empty bitvector. BitVector() : Size(0) {} @@ -146,138 +203,164 @@ public: return !any(); } - /// find_first - Returns the index of the first set bit, -1 if none - /// of the bits are set. - int find_first() const { - for (unsigned i = 0; i < NumBitWords(size()); ++i) - if (Bits[i] != 0) - return i * BITWORD_SIZE + countTrailingZeros(Bits[i]); - return -1; - } - - /// find_last - Returns the index of the last set bit, -1 if none of the bits - /// are set. - int find_last() const { - if (Size == 0) + /// find_first_in - Returns the index of the first set bit in the range + /// [Begin, End). Returns -1 if all bits in the range are unset. + int find_first_in(unsigned Begin, unsigned End) const { + assert(Begin <= End && End <= Size); + if (Begin == End) return -1; - unsigned N = NumBitWords(size()); - assert(N > 0); + unsigned FirstWord = Begin / BITWORD_SIZE; + unsigned LastWord = (End - 1) / BITWORD_SIZE; - unsigned i = N - 1; - while (i > 0 && Bits[i] == BitWord(0)) - --i; + // Check subsequent words. + for (unsigned i = FirstWord; i <= LastWord; ++i) { + BitWord Copy = Bits[i]; - return int((i + 1) * BITWORD_SIZE - countLeadingZeros(Bits[i])) - 1; - } + if (i == FirstWord) { + unsigned FirstBit = Begin % BITWORD_SIZE; + Copy &= maskTrailingZeros(FirstBit); + } - /// find_first_unset - Returns the index of the first unset bit, -1 if all - /// of the bits are set. - int find_first_unset() const { - for (unsigned i = 0; i < NumBitWords(size()); ++i) - if (Bits[i] != ~0UL) { - unsigned Result = i * BITWORD_SIZE + countTrailingOnes(Bits[i]); - return Result < size() ? Result : -1; + if (i == LastWord) { + unsigned LastBit = (End - 1) % BITWORD_SIZE; + Copy &= maskTrailingOnes(LastBit + 1); } + if (Copy != 0) + return i * BITWORD_SIZE + countTrailingZeros(Copy); + } return -1; } - /// find_last_unset - Returns the index of the last unset bit, -1 if all of - /// the bits are set. - int find_last_unset() const { - if (Size == 0) + /// find_last_in - Returns the index of the last set bit in the range + /// [Begin, End). Returns -1 if all bits in the range are unset. + int find_last_in(unsigned Begin, unsigned End) const { + assert(Begin <= End && End <= Size); + if (Begin == End) return -1; - const unsigned N = NumBitWords(size()); - assert(N > 0); + unsigned LastWord = (End - 1) / BITWORD_SIZE; + unsigned FirstWord = Begin / BITWORD_SIZE; - unsigned i = N - 1; - BitWord W = Bits[i]; + for (unsigned i = LastWord + 1; i >= FirstWord + 1; --i) { + unsigned CurrentWord = i - 1; - // The last word in the BitVector has some unused bits, so we need to set - // them all to 1 first. Set them all to 1 so they don't get treated as - // valid unset bits. - unsigned UnusedCount = BITWORD_SIZE - size() % BITWORD_SIZE; - W |= maskLeadingOnes(UnusedCount); + BitWord Copy = Bits[CurrentWord]; + if (CurrentWord == LastWord) { + unsigned LastBit = (End - 1) % BITWORD_SIZE; + Copy &= maskTrailingOnes(LastBit + 1); + } - while (W == ~BitWord(0) && --i > 0) - W = Bits[i]; + if (CurrentWord == FirstWord) { + unsigned FirstBit = Begin % BITWORD_SIZE; + Copy &= maskTrailingZeros(FirstBit); + } + + if (Copy != 0) + return (CurrentWord + 1) * BITWORD_SIZE - countLeadingZeros(Copy) - 1; + } - return int((i + 1) * BITWORD_SIZE - countLeadingOnes(W)) - 1; + return -1; } - /// find_next - Returns the index of the next set bit following the - /// "Prev" bit. Returns -1 if the next set bit is not found. - int find_next(unsigned Prev) const { - ++Prev; - if (Prev >= Size) + /// find_first_unset_in - Returns the index of the first unset bit in the + /// range [Begin, End). Returns -1 if all bits in the range are set. + int find_first_unset_in(unsigned Begin, unsigned End) const { + assert(Begin <= End && End <= Size); + if (Begin == End) return -1; - unsigned WordPos = Prev / BITWORD_SIZE; - unsigned BitPos = Prev % BITWORD_SIZE; - BitWord Copy = Bits[WordPos]; - // Mask off previous bits. - Copy &= maskTrailingZeros(BitPos); - - if (Copy != 0) - return WordPos * BITWORD_SIZE + countTrailingZeros(Copy); + unsigned FirstWord = Begin / BITWORD_SIZE; + unsigned LastWord = (End - 1) / BITWORD_SIZE; // Check subsequent words. - for (unsigned i = WordPos+1; i < NumBitWords(size()); ++i) - if (Bits[i] != 0) - return i * BITWORD_SIZE + countTrailingZeros(Bits[i]); + for (unsigned i = FirstWord; i <= LastWord; ++i) { + BitWord Copy = Bits[i]; + + if (i == FirstWord) { + unsigned FirstBit = Begin % BITWORD_SIZE; + Copy |= maskTrailingOnes(FirstBit); + } + + if (i == LastWord) { + unsigned LastBit = (End - 1) % BITWORD_SIZE; + Copy |= maskTrailingZeros(LastBit + 1); + } + if (Copy != ~0UL) { + unsigned Result = i * BITWORD_SIZE + countTrailingOnes(Copy); + return Result < size() ? Result : -1; + } + } return -1; } - /// find_next_unset - Returns the index of the next unset bit following the - /// "Prev" bit. Returns -1 if all remaining bits are set. - int find_next_unset(unsigned Prev) const { - ++Prev; - if (Prev >= Size) + /// find_last_unset_in - Returns the index of the last unset bit in the + /// range [Begin, End). Returns -1 if all bits in the range are set. + int find_last_unset_in(unsigned Begin, unsigned End) const { + assert(Begin <= End && End <= Size); + if (Begin == End) return -1; - unsigned WordPos = Prev / BITWORD_SIZE; - unsigned BitPos = Prev % BITWORD_SIZE; - BitWord Copy = Bits[WordPos]; - // Mask in previous bits. - BitWord Mask = (1 << BitPos) - 1; - Copy |= Mask; + unsigned LastWord = (End - 1) / BITWORD_SIZE; + unsigned FirstWord = Begin / BITWORD_SIZE; - if (Copy != ~0UL) - return next_unset_in_word(WordPos, Copy); + for (unsigned i = LastWord + 1; i >= FirstWord + 1; --i) { + unsigned CurrentWord = i - 1; - // Check subsequent words. - for (unsigned i = WordPos + 1; i < NumBitWords(size()); ++i) - if (Bits[i] != ~0UL) - return next_unset_in_word(i, Bits[i]); + BitWord Copy = Bits[CurrentWord]; + if (CurrentWord == LastWord) { + unsigned LastBit = (End - 1) % BITWORD_SIZE; + Copy |= maskTrailingZeros(LastBit + 1); + } + + if (CurrentWord == FirstWord) { + unsigned FirstBit = Begin % BITWORD_SIZE; + Copy |= maskTrailingOnes(FirstBit); + } + + if (Copy != ~0UL) { + unsigned Result = + (CurrentWord + 1) * BITWORD_SIZE - countLeadingOnes(Copy) - 1; + return Result < Size ? Result : -1; + } + } return -1; } + /// find_first - Returns the index of the first set bit, -1 if none + /// of the bits are set. + int find_first() const { return find_first_in(0, Size); } + + /// find_last - Returns the index of the last set bit, -1 if none of the bits + /// are set. + int find_last() const { return find_last_in(0, Size); } + + /// find_next - Returns the index of the next set bit following the + /// "Prev" bit. Returns -1 if the next set bit is not found. + int find_next(unsigned Prev) const { return find_first_in(Prev + 1, Size); } + /// find_prev - Returns the index of the first set bit that precedes the /// the bit at \p PriorTo. Returns -1 if all previous bits are unset. - int find_prev(unsigned PriorTo) const { - if (PriorTo == 0) - return -1; + int find_prev(unsigned PriorTo) const { return find_last_in(0, PriorTo); } - --PriorTo; + /// find_first_unset - Returns the index of the first unset bit, -1 if all + /// of the bits are set. + int find_first_unset() const { return find_first_unset_in(0, Size); } - unsigned WordPos = PriorTo / BITWORD_SIZE; - unsigned BitPos = PriorTo % BITWORD_SIZE; - BitWord Copy = Bits[WordPos]; - // Mask off next bits. - Copy &= maskTrailingOnes(BitPos + 1); - - if (Copy != 0) - return (WordPos + 1) * BITWORD_SIZE - countLeadingZeros(Copy) - 1; - - // Check previous words. - for (unsigned i = 1; i <= WordPos; ++i) { - unsigned Index = WordPos - i; - if (Bits[Index] == 0) - continue; - return (Index + 1) * BITWORD_SIZE - countLeadingZeros(Bits[Index]) - 1; - } - return -1; + /// find_next_unset - Returns the index of the next unset bit following the + /// "Prev" bit. Returns -1 if all remaining bits are set. + int find_next_unset(unsigned Prev) const { + return find_first_unset_in(Prev + 1, Size); + } + + /// find_last_unset - Returns the index of the last unset bit, -1 if all of + /// the bits are set. + int find_last_unset() const { return find_last_unset_in(0, Size); } + + /// find_prev_unset - Returns the index of the first unset bit that precedes + /// the bit at \p PriorTo. Returns -1 if all previous bits are set. + int find_prev_unset(unsigned PriorTo) { + return find_last_unset_in(0, PriorTo); } /// clear - Removes all bits from the bitvector. Does not change capacity. Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/PostOrderIterator.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/PostOrderIterator.h Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/PostOrderIterator.h Thu May 18 18:33:33 2017 (r318477) @@ -96,24 +96,14 @@ template , public po_iterator_storage { - typedef std::iterator super; - typedef typename GT::NodeRef NodeRef; - typedef typename GT::ChildIteratorType ChildItTy; + using super = std::iterator; + using NodeRef = typename GT::NodeRef; + using ChildItTy = typename GT::ChildIteratorType; // VisitStack - Used to maintain the ordering. Top = current block // First element is basic block pointer, second is the 'next child' to visit std::vector> VisitStack; - void traverseChild() { - while (VisitStack.back().second != GT::child_end(VisitStack.back().first)) { - NodeRef BB = *VisitStack.back().second++; - if (this->insertEdge(Optional(VisitStack.back().first), BB)) { - // If the block is not visited... - VisitStack.push_back(std::make_pair(BB, GT::child_begin(BB))); - } - } - } - po_iterator(NodeRef BB) { this->insertEdge(Optional(), BB); VisitStack.push_back(std::make_pair(BB, GT::child_begin(BB))); @@ -134,8 +124,18 @@ class po_iterator : po_iterator_storage(S) { } // End is when stack is empty. + void traverseChild() { + while (VisitStack.back().second != GT::child_end(VisitStack.back().first)) { + NodeRef BB = *VisitStack.back().second++; + if (this->insertEdge(Optional(VisitStack.back().first), BB)) { + // If the block is not visited... + VisitStack.push_back(std::make_pair(BB, GT::child_begin(BB))); + } + } + } + public: - typedef typename super::pointer pointer; + using pointer = typename super::pointer; // Provide static "constructors"... static po_iterator begin(GraphT G) { @@ -286,7 +286,8 @@ inverse_post_order_ext(const T &G, SetTy template> class ReversePostOrderTraversal { - typedef typename GT::NodeRef NodeRef; + using NodeRef = typename GT::NodeRef; + std::vector Blocks; // Block list in normal PO order void Initialize(NodeRef BB) { @@ -294,7 +295,7 @@ class ReversePostOrderTraversal { } public: - typedef typename std::vector::reverse_iterator rpo_iterator; + using rpo_iterator = typename std::vector::reverse_iterator; ReversePostOrderTraversal(GraphT G) { Initialize(GT::getEntryNode(G)); } Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/PriorityWorklist.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/PriorityWorklist.h Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/PriorityWorklist.h Thu May 18 18:33:33 2017 (r318477) @@ -17,13 +17,14 @@ #define LLVM_ADT_PRIORITYWORKLIST_H #include "llvm/ADT/DenseMap.h" -#include "llvm/ADT/STLExtras.h" -#include "llvm/ADT/Sequence.h" #include "llvm/ADT/SmallVector.h" +#include "llvm/ADT/STLExtras.h" #include "llvm/Support/Compiler.h" #include #include #include +#include +#include #include namespace llvm { @@ -55,11 +56,11 @@ template > class PriorityWorklist { public: - typedef T value_type; - typedef T key_type; - typedef T& reference; - typedef const T& const_reference; - typedef typename MapT::size_type size_type; + using value_type = T; + using key_type = T; + using reference = T&; + using const_reference = const T&; + using size_type = typename MapT::size_type; /// Construct an empty PriorityWorklist PriorityWorklist() = default; Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/SCCIterator.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/SCCIterator.h Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/SCCIterator.h Thu May 18 18:33:33 2017 (r318477) @@ -1,4 +1,4 @@ -//===---- ADT/SCCIterator.h - Strongly Connected Comp. Iter. ----*- C++ -*-===// +//===- ADT/SCCIterator.h - Strongly Connected Comp. Iter. -------*- C++ -*-===// // // The LLVM Compiler Infrastructure // @@ -43,10 +43,10 @@ template , std::forward_iterator_tag, const std::vector, ptrdiff_t> { - typedef typename GT::NodeRef NodeRef; - typedef typename GT::ChildIteratorType ChildItTy; - typedef std::vector SccTy; - typedef typename scc_iterator::reference reference; + using NodeRef = typename GT::NodeRef; + using ChildItTy = typename GT::ChildIteratorType; + using SccTy = std::vector; + using reference = typename scc_iterator::reference; /// Element of VisitStack during DFS. struct StackElement { Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/Sequence.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/Sequence.h Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/Sequence.h Thu May 18 18:33:33 2017 (r318477) @@ -13,27 +13,31 @@ /// //===----------------------------------------------------------------------===// -#ifndef LLVM_ADT_SEQ_H -#define LLVM_ADT_SEQ_H +#ifndef LLVM_ADT_SEQUENCE_H +#define LLVM_ADT_SEQUENCE_H #include "llvm/ADT/iterator.h" #include "llvm/ADT/iterator_range.h" +#include +#include +#include namespace llvm { namespace detail { + template class value_sequence_iterator : public iterator_facade_base, std::random_access_iterator_tag, const ValueT> { - typedef typename value_sequence_iterator::iterator_facade_base BaseT; + using BaseT = typename value_sequence_iterator::iterator_facade_base; ValueT Value; public: - typedef typename BaseT::difference_type difference_type; - typedef typename BaseT::reference reference; + using difference_type = typename BaseT::difference_type; + using reference = typename BaseT::reference; value_sequence_iterator() = default; value_sequence_iterator(const value_sequence_iterator &) = default; @@ -65,7 +69,8 @@ public: reference operator*() const { return Value; } }; -} // End detail namespace. + +} // end namespace detail template iterator_range> seq(ValueT Begin, @@ -74,6 +79,6 @@ iterator_range(End)); } -} +} // end namespace llvm -#endif +#endif // LLVM_ADT_SEQUENCE_H Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/SetVector.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/SetVector.h Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/SetVector.h Thu May 18 18:33:33 2017 (r318477) @@ -40,17 +40,17 @@ template > class SetVector { public: - typedef T value_type; - typedef T key_type; - typedef T& reference; - typedef const T& const_reference; - typedef Set set_type; - typedef Vector vector_type; - typedef typename vector_type::const_iterator iterator; - typedef typename vector_type::const_iterator const_iterator; - typedef typename vector_type::const_reverse_iterator reverse_iterator; - typedef typename vector_type::const_reverse_iterator const_reverse_iterator; - typedef typename vector_type::size_type size_type; + using value_type = T; + using key_type = T; + using reference = T&; + using const_reference = const T&; + using set_type = Set; + using vector_type = Vector; + using iterator = typename vector_type::const_iterator; + using const_iterator = typename vector_type::const_iterator; + using reverse_iterator = typename vector_type::const_reverse_iterator; + using const_reverse_iterator = typename vector_type::const_reverse_iterator; + using size_type = typename vector_type::size_type; /// \brief Construct an empty SetVector SetVector() = default; Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallBitVector.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallBitVector.h Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallBitVector.h Thu May 18 18:33:33 2017 (r318477) @@ -134,6 +134,19 @@ private: } public: + typedef const_set_bits_iterator_impl const_set_bits_iterator; + typedef const_set_bits_iterator set_iterator; + + const_set_bits_iterator set_bits_begin() const { + return const_set_bits_iterator(*this); + } + const_set_bits_iterator set_bits_end() const { + return const_set_bits_iterator(*this, -1); + } + iterator_range set_bits() const { + return make_range(set_bits_begin(), set_bits_end()); + } + /// Creates an empty bitvector. SmallBitVector() : X(1) {} Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallPtrSet.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallPtrSet.h Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallPtrSet.h Thu May 18 18:33:33 2017 (r318477) @@ -27,15 +27,13 @@ #include #include -#if LLVM_ENABLE_ABI_BREAKING_CHECKS namespace llvm { + +#if LLVM_ENABLE_ABI_BREAKING_CHECKS template struct ReverseIterate { static bool value; }; template bool ReverseIterate::value = false; -} #endif -namespace llvm { - /// SmallPtrSetImplBase - This is the common code shared among all the /// SmallPtrSet<>'s, which is almost everything. SmallPtrSet has two modes, one /// for small and one for large sets. @@ -92,7 +90,7 @@ protected: } public: - typedef unsigned size_type; + using size_type = unsigned; SmallPtrSetImplBase &operator=(const SmallPtrSetImplBase &) = delete; @@ -273,14 +271,14 @@ protected: /// SmallPtrSetIterator - This implements a const_iterator for SmallPtrSet. template class SmallPtrSetIterator : public SmallPtrSetIteratorImpl { - typedef PointerLikeTypeTraits PtrTraits; + using PtrTraits = PointerLikeTypeTraits; public: - typedef PtrTy value_type; - typedef PtrTy reference; - typedef PtrTy pointer; - typedef std::ptrdiff_t difference_type; - typedef std::forward_iterator_tag iterator_category; + using value_type = PtrTy; + using reference = PtrTy; + using pointer = PtrTy; + using difference_type = std::ptrdiff_t; + using iterator_category = std::forward_iterator_tag; explicit SmallPtrSetIterator(const void *const *BP, const void *const *E) : SmallPtrSetIteratorImpl(BP, E) {} @@ -351,8 +349,8 @@ struct RoundUpToPowerOfTwo { template class SmallPtrSetImpl : public SmallPtrSetImplBase { using ConstPtrType = typename add_const_past_pointer::type; - typedef PointerLikeTypeTraits PtrTraits; - typedef PointerLikeTypeTraits ConstPtrTraits; + using PtrTraits = PointerLikeTypeTraits; + using ConstPtrTraits = PointerLikeTypeTraits; protected: // Constructors that forward to the base. @@ -365,8 +363,8 @@ protected: : SmallPtrSetImplBase(SmallStorage, SmallSize) {} public: - typedef SmallPtrSetIterator iterator; - typedef SmallPtrSetIterator const_iterator; + using iterator = SmallPtrSetIterator; + using const_iterator = SmallPtrSetIterator; SmallPtrSetImpl(const SmallPtrSetImpl &) = delete; @@ -431,7 +429,7 @@ class SmallPtrSet : public SmallPtrSetIm // DenseSet<> instead if you expect many elements in the set. static_assert(SmallSize <= 32, "SmallSize should be small"); - typedef SmallPtrSetImpl BaseT; + using BaseT = SmallPtrSetImpl; // Make sure that SmallSize is a power of two, round up if not. enum { SmallSizePowTwo = RoundUpToPowerOfTwo::Val }; Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallVector.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallVector.h Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallVector.h Thu May 18 18:33:33 2017 (r318477) @@ -71,7 +71,7 @@ private: // Allocate raw space for N elements of type T. If T has a ctor or dtor, we // don't want it to be automatically run, so we need to represent the space as // something else. Use an array of char of sufficient alignment. - typedef AlignedCharArrayUnion U; + using U = AlignedCharArrayUnion; U FirstEl; // Space after 'FirstEl' is clobbered, do not add any instance vars after it. @@ -96,19 +96,19 @@ protected: void setEnd(T *P) { this->EndX = P; } public: - typedef size_t size_type; - typedef ptrdiff_t difference_type; - typedef T value_type; - typedef T *iterator; - typedef const T *const_iterator; - - typedef std::reverse_iterator const_reverse_iterator; - typedef std::reverse_iterator reverse_iterator; - - typedef T &reference; - typedef const T &const_reference; - typedef T *pointer; - typedef const T *const_pointer; + using size_type = size_t; + using difference_type = ptrdiff_t; + using value_type = T; + using iterator = T *; + using const_iterator = const T *; + + using const_reverse_iterator = std::reverse_iterator; + using reverse_iterator = std::reverse_iterator; + + using reference = T &; + using const_reference = const T &; + using pointer = T *; + using const_pointer = const T *; // forward iterator creation methods. LLVM_ATTRIBUTE_ALWAYS_INLINE @@ -319,12 +319,12 @@ public: /// reduce code duplication based on the SmallVector 'N' template parameter. template class SmallVectorImpl : public SmallVectorTemplateBase::value> { - typedef SmallVectorTemplateBase::value > SuperClass; + using SuperClass = SmallVectorTemplateBase::value>; public: - typedef typename SuperClass::iterator iterator; - typedef typename SuperClass::const_iterator const_iterator; - typedef typename SuperClass::size_type size_type; + using iterator = typename SuperClass::iterator; + using const_iterator = typename SuperClass::const_iterator; + using size_type = typename SuperClass::size_type; protected: // Default ctor - Initialize to empty. @@ -845,8 +845,7 @@ class SmallVector : public SmallVectorIm SmallVectorStorage Storage; public: - SmallVector() : SmallVectorImpl(N) { - } + SmallVector() : SmallVectorImpl(N) {} explicit SmallVector(size_t Size, const T &Value = T()) : SmallVectorImpl(N) { @@ -883,16 +882,16 @@ public: SmallVectorImpl::operator=(::std::move(RHS)); } - const SmallVector &operator=(SmallVector &&RHS) { - SmallVectorImpl::operator=(::std::move(RHS)); - return *this; - } - SmallVector(SmallVectorImpl &&RHS) : SmallVectorImpl(N) { if (!RHS.empty()) SmallVectorImpl::operator=(::std::move(RHS)); } + const SmallVector &operator=(SmallVector &&RHS) { + SmallVectorImpl::operator=(::std::move(RHS)); + return *this; + } + const SmallVector &operator=(SmallVectorImpl &&RHS) { SmallVectorImpl::operator=(::std::move(RHS)); return *this; Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/SparseBitVector.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/SparseBitVector.h Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/SparseBitVector.h Thu May 18 18:33:33 2017 (r318477) @@ -1,4 +1,4 @@ -//===- llvm/ADT/SparseBitVector.h - Efficient Sparse BitVector -*- C++ -*- ===// +//===- llvm/ADT/SparseBitVector.h - Efficient Sparse BitVector --*- C++ -*-===// // // The LLVM Compiler Infrastructure // @@ -41,8 +41,8 @@ namespace llvm { template struct SparseBitVectorElement { public: - typedef unsigned long BitWord; - typedef unsigned size_type; + using BitWord = unsigned long; + using size_type = unsigned; enum { BITWORD_SIZE = sizeof(BitWord) * CHAR_BIT, BITWORDS_PER_ELEMENT = (ElementSize + BITWORD_SIZE - 1) / BITWORD_SIZE, @@ -100,7 +100,7 @@ public: Bits[Idx / BITWORD_SIZE] |= 1L << (Idx % BITWORD_SIZE); } - bool test_and_set (unsigned Idx) { + bool test_and_set(unsigned Idx) { bool old = test(Idx); if (!old) { set(Idx); @@ -254,9 +254,9 @@ public: template class SparseBitVector { - typedef std::list> ElementList; - typedef typename ElementList::iterator ElementListIter; - typedef typename ElementList::const_iterator ElementListConstIter; + using ElementList = std::list>; + using ElementListIter = typename ElementList::iterator; + using ElementListConstIter = typename ElementList::const_iterator; enum { BITWORD_SIZE = SparseBitVectorElement::BITWORD_SIZE }; @@ -421,14 +421,12 @@ class SparseBitVector { }; public: - typedef SparseBitVectorIterator iterator; + using iterator = SparseBitVectorIterator; SparseBitVector() { CurrElementIter = Elements.begin(); } - ~SparseBitVector() = default; - // SparseBitVector copy ctor. SparseBitVector(const SparseBitVector &RHS) { ElementListConstIter ElementIter = RHS.Elements.begin(); @@ -440,6 +438,8 @@ public: CurrElementIter = Elements.begin (); } + ~SparseBitVector() = default; + // Clear. void clear() { Elements.clear(); Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/SparseMultiSet.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/SparseMultiSet.h Thu May 18 18:24:11 2017 (r318476) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/SparseMultiSet.h Thu May 18 18:33:33 2017 (r318477) @@ -1,4 +1,4 @@ -//===--- llvm/ADT/SparseMultiSet.h - Sparse multiset ------------*- C++ -*-===// +//===- llvm/ADT/SparseMultiSet.h - Sparse multiset --------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // @@ -101,7 +101,7 @@ class SparseMultiSet { unsigned Prev; unsigned Next; - SMSNode(ValueT D, unsigned P, unsigned N) : Data(D), Prev(P), Next(N) { } + SMSNode(ValueT D, unsigned P, unsigned N) : Data(D), Prev(P), Next(N) {} /// List tails have invalid Nexts. bool isTail() const { @@ -118,8 +118,8 @@ class SparseMultiSet { bool isValid() const { return Prev != INVALID; } }; - typedef typename KeyFunctorT::argument_type KeyT; - typedef SmallVector DenseT; + using KeyT = typename KeyFunctorT::argument_type; + using DenseT = SmallVector; DenseT Dense; SparseT *Sparse = nullptr; unsigned Universe = 0; @@ -183,12 +183,12 @@ class SparseMultiSet { } *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Fri May 19 21:20:06 2017 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1B4C5D7497B for ; Fri, 19 May 2017 21:20:06 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B9CD41E0; Fri, 19 May 2017 21:20:05 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v4JLK4LW029368; Fri, 19 May 2017 21:20:04 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v4JLK2Ue029340; Fri, 19 May 2017 21:20:02 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201705192120.v4JLK2Ue029340@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 19 May 2017 21:20:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r318561 - in projects/clang500-import: bin/sh cddl/contrib/opensolaris/lib/libzpool/common cddl/usr.sbin/dtrace/tests/tools contrib/netbsd-tests/fs/tmpfs etc etc/cron.d etc/mtree lib/li... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 May 2017 21:20:06 -0000 Author: dim Date: Fri May 19 21:20:01 2017 New Revision: 318561 URL: https://svnweb.freebsd.org/changeset/base/318561 Log: Merge ^/head r318380 through r318559. Added: projects/clang500-import/etc/cron.d/ - copied from r318559, head/etc/cron.d/ projects/clang500-import/lib/libc/tests/gen/realpath2_test.c - copied unchanged from r318559, head/lib/libc/tests/gen/realpath2_test.c projects/clang500-import/share/man/man4/ccr.4 - copied unchanged from r318559, head/share/man/man4/ccr.4 projects/clang500-import/sys/dev/cxgbe/crypto/ - copied from r318559, head/sys/dev/cxgbe/crypto/ projects/clang500-import/sys/dev/mpr/mpi/mpi2_pci.h - copied unchanged from r318559, head/sys/dev/mpr/mpi/mpi2_pci.h projects/clang500-import/sys/modules/cxgbe/ccr/ - copied from r318559, head/sys/modules/cxgbe/ccr/ projects/clang500-import/usr.bin/getconf/tests/ - copied from r318559, head/usr.bin/getconf/tests/ projects/clang500-import/usr.bin/indent/tests/binary.0 - copied unchanged from r318559, head/usr.bin/indent/tests/binary.0 projects/clang500-import/usr.bin/indent/tests/binary.0.stdout - copied unchanged from r318559, head/usr.bin/indent/tests/binary.0.stdout Modified: projects/clang500-import/bin/sh/eval.c projects/clang500-import/bin/sh/output.c projects/clang500-import/bin/sh/output.h projects/clang500-import/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c projects/clang500-import/cddl/usr.sbin/dtrace/tests/tools/exclude.sh projects/clang500-import/contrib/netbsd-tests/fs/tmpfs/t_vnd.sh projects/clang500-import/etc/Makefile projects/clang500-import/etc/crontab projects/clang500-import/etc/mtree/BSD.tests.dist projects/clang500-import/lib/libc/stdlib/qsort.c projects/clang500-import/lib/libc/tests/gen/Makefile projects/clang500-import/lib/libthr/thread/thr_attr.c projects/clang500-import/lib/libthr/thread/thr_exit.c projects/clang500-import/lib/libthr/thread/thr_sig.c projects/clang500-import/lib/libthr/thread/thr_spec.c projects/clang500-import/lib/libthr/thread/thr_stack.c projects/clang500-import/lib/libthr/thread/thr_symbols.c projects/clang500-import/lib/libthr/thread/thr_umtx.c projects/clang500-import/lib/libthr/thread/thr_umtx.h projects/clang500-import/libexec/rtld-elf/rtld.1 projects/clang500-import/libexec/rtld-elf/rtld.c projects/clang500-import/sbin/ipfw/tables.c projects/clang500-import/share/man/man4/Makefile projects/clang500-import/share/man/man4/cxgbe.4 projects/clang500-import/share/man/man4/mpr.4 projects/clang500-import/share/man/man7/arch.7 projects/clang500-import/share/man/man9/Makefile projects/clang500-import/share/man/man9/sglist.9 projects/clang500-import/sys/amd64/amd64/sys_machdep.c projects/clang500-import/sys/amd64/amd64/vm_machdep.c projects/clang500-import/sys/amd64/include/vmparam.h projects/clang500-import/sys/arm/arm/sys_machdep.c projects/clang500-import/sys/arm/arm/vm_machdep.c projects/clang500-import/sys/arm/include/atomic-v4.h projects/clang500-import/sys/arm/include/vmparam.h projects/clang500-import/sys/arm/mv/armada38x/armada38x_mp.c projects/clang500-import/sys/arm/mv/mpic.c projects/clang500-import/sys/arm/mv/mv_common.c projects/clang500-import/sys/arm/mv/mvwin.h projects/clang500-import/sys/boot/fdt/dts/arm/armada-38x.dtsi projects/clang500-import/sys/compat/linuxkpi/common/src/linux_compat.c projects/clang500-import/sys/conf/NOTES projects/clang500-import/sys/conf/files projects/clang500-import/sys/crypto/des/des_enc.c projects/clang500-import/sys/crypto/des/des_setkey.c projects/clang500-import/sys/ddb/db_access.c projects/clang500-import/sys/ddb/db_output.c projects/clang500-import/sys/ddb/db_sym.c projects/clang500-import/sys/dev/cesa/cesa.c projects/clang500-import/sys/dev/cesa/cesa.h projects/clang500-import/sys/dev/cs/if_cs.c projects/clang500-import/sys/dev/cxgbe/adapter.h projects/clang500-import/sys/dev/cxgbe/t4_main.c projects/clang500-import/sys/dev/drm2/ttm/ttm_bo_vm.c projects/clang500-import/sys/dev/drm2/ttm/ttm_page_alloc.c projects/clang500-import/sys/dev/etherswitch/e6000sw/e6000sw.c projects/clang500-import/sys/dev/etherswitch/e6000sw/e6000swreg.h projects/clang500-import/sys/dev/ixgb/if_ixgb.c projects/clang500-import/sys/dev/lge/if_lge.c projects/clang500-import/sys/dev/mlx4/mlx4_core/mlx4_eq.c projects/clang500-import/sys/dev/mlx4/mlx4_core/mlx4_main.c projects/clang500-import/sys/dev/mpr/mpi/mpi2.h projects/clang500-import/sys/dev/mpr/mpi/mpi2_cnfg.h projects/clang500-import/sys/dev/mpr/mpi/mpi2_hbd.h projects/clang500-import/sys/dev/mpr/mpi/mpi2_history.txt projects/clang500-import/sys/dev/mpr/mpi/mpi2_init.h projects/clang500-import/sys/dev/mpr/mpi/mpi2_ioc.h projects/clang500-import/sys/dev/mpr/mpi/mpi2_tool.h projects/clang500-import/sys/dev/mpr/mpr.c projects/clang500-import/sys/dev/mpr/mpr_config.c projects/clang500-import/sys/dev/mpr/mpr_mapping.c projects/clang500-import/sys/dev/mpr/mpr_mapping.h projects/clang500-import/sys/dev/mpr/mpr_pci.c projects/clang500-import/sys/dev/mpr/mpr_sas.c projects/clang500-import/sys/dev/mpr/mpr_sas.h projects/clang500-import/sys/dev/mpr/mpr_sas_lsi.c projects/clang500-import/sys/dev/mpr/mpr_table.c projects/clang500-import/sys/dev/mpr/mpr_table.h projects/clang500-import/sys/dev/mpr/mpr_user.c projects/clang500-import/sys/dev/mpr/mprvar.h projects/clang500-import/sys/dev/mse/mse_isa.c projects/clang500-import/sys/dev/my/if_my.c projects/clang500-import/sys/dev/pcn/if_pcn.c projects/clang500-import/sys/dev/ppbus/immio.c projects/clang500-import/sys/dev/ppbus/vpoio.c projects/clang500-import/sys/dev/ppc/ppc.c projects/clang500-import/sys/dev/qlnx/qlnxe/qlnx_def.h projects/clang500-import/sys/dev/qlnx/qlnxe/qlnx_ioctl.c projects/clang500-import/sys/dev/qlnx/qlnxe/qlnx_os.c projects/clang500-import/sys/dev/qlnx/qlnxe/qlnx_os.h projects/clang500-import/sys/dev/qlxgb/qla_os.c projects/clang500-import/sys/dev/qlxgbe/ql_os.c projects/clang500-import/sys/dev/qlxge/qls_os.c projects/clang500-import/sys/dev/rl/if_rl.c projects/clang500-import/sys/dev/sound/pci/fm801.c projects/clang500-import/sys/dev/speaker/spkr.c projects/clang500-import/sys/dev/tl/if_tl.c projects/clang500-import/sys/dev/tws/tws.h projects/clang500-import/sys/dev/usb/usb_busdma.c projects/clang500-import/sys/dev/wb/if_wb.c projects/clang500-import/sys/dev/xen/blkfront/blkfront.c projects/clang500-import/sys/dev/xen/netfront/netfront.c projects/clang500-import/sys/dev/xl/if_xl.c projects/clang500-import/sys/fs/fifofs/fifo_vnops.c projects/clang500-import/sys/fs/msdosfs/bootsect.h projects/clang500-import/sys/fs/msdosfs/bpb.h projects/clang500-import/sys/fs/msdosfs/denode.h projects/clang500-import/sys/fs/msdosfs/direntry.h projects/clang500-import/sys/fs/msdosfs/msdosfs_conv.c projects/clang500-import/sys/fs/msdosfs/msdosfs_fat.c projects/clang500-import/sys/fs/msdosfs/msdosfs_lookup.c projects/clang500-import/sys/fs/msdosfs/msdosfs_vfsops.c projects/clang500-import/sys/fs/msdosfs/msdosfsmount.h projects/clang500-import/sys/fs/nandfs/nandfs_vnops.c projects/clang500-import/sys/geom/geom_vfs.c projects/clang500-import/sys/i386/i386/in_cksum.c projects/clang500-import/sys/i386/i386/k6_mem.c projects/clang500-import/sys/i386/i386/sys_machdep.c projects/clang500-import/sys/i386/i386/vm_machdep.c projects/clang500-import/sys/i386/ibcs2/ibcs2_misc.c projects/clang500-import/sys/i386/ibcs2/ibcs2_other.c projects/clang500-import/sys/i386/ibcs2/ibcs2_signal.c projects/clang500-import/sys/i386/ibcs2/ibcs2_socksys.c projects/clang500-import/sys/i386/isa/ccbque.h projects/clang500-import/sys/i386/isa/elink.c projects/clang500-import/sys/kern/inflate.c projects/clang500-import/sys/kern/kern_clock.c projects/clang500-import/sys/kern/kern_exec.c projects/clang500-import/sys/kern/kern_fail.c projects/clang500-import/sys/kern/kern_prot.c projects/clang500-import/sys/kern/kern_resource.c projects/clang500-import/sys/kern/kern_sig.c projects/clang500-import/sys/kern/kern_timeout.c projects/clang500-import/sys/kern/kern_xxx.c projects/clang500-import/sys/kern/sched_4bsd.c projects/clang500-import/sys/kern/subr_sglist.c projects/clang500-import/sys/kern/sysv_msg.c projects/clang500-import/sys/kern/vfs_export.c projects/clang500-import/sys/kern/vfs_mount.c projects/clang500-import/sys/kern/vfs_syscalls.c projects/clang500-import/sys/kern/vfs_vnops.c projects/clang500-import/sys/libkern/qsort.c projects/clang500-import/sys/libkern/zlib.c projects/clang500-import/sys/mips/cavium/cryptocteon/cavium_crypto.c projects/clang500-import/sys/mips/mips/vm_machdep.c projects/clang500-import/sys/modules/cxgbe/Makefile projects/clang500-import/sys/modules/dtrace/dtaudit/Makefile projects/clang500-import/sys/modules/ipsec/Makefile projects/clang500-import/sys/modules/qlnx/qlnxe/Makefile projects/clang500-import/sys/net/altq/altq_rio.c projects/clang500-import/sys/net/altq/altq_rmclass.h projects/clang500-import/sys/net/bpf_filter.c projects/clang500-import/sys/net/ethernet.h projects/clang500-import/sys/net/if_llatbl.c projects/clang500-import/sys/net/if_media.c projects/clang500-import/sys/net/slcompress.c projects/clang500-import/sys/net80211/ieee80211_radiotap.h projects/clang500-import/sys/netinet/in.c projects/clang500-import/sys/netinet/in_cksum.c projects/clang500-import/sys/netinet/ip_divert.c projects/clang500-import/sys/netinet/ip_icmp.c projects/clang500-import/sys/netinet6/in6_pcb.c projects/clang500-import/sys/netinet6/raw_ip6.c projects/clang500-import/sys/netipsec/ipsec_mbuf.c projects/clang500-import/sys/netpfil/ipfw/dn_aqm_pie.c projects/clang500-import/sys/netpfil/ipfw/dn_sched_fq_pie.c projects/clang500-import/sys/powerpc/conf/NOTES projects/clang500-import/sys/rpc/clnt.h projects/clang500-import/sys/sys/sglist.h projects/clang500-import/tests/sys/fs/tmpfs/Makefile projects/clang500-import/usr.bin/getconf/Makefile projects/clang500-import/usr.bin/indent/lexi.c projects/clang500-import/usr.bin/indent/tests/Makefile projects/clang500-import/usr.bin/resizewin/resizewin.1 projects/clang500-import/usr.bin/top/top.local.1 projects/clang500-import/usr.sbin/devctl/devctl.8 projects/clang500-import/usr.sbin/makefs/ffs.c projects/clang500-import/usr.sbin/makefs/ffs.h projects/clang500-import/usr.sbin/makefs/ffs/ffs_alloc.c projects/clang500-import/usr.sbin/makefs/ffs/ffs_balloc.c projects/clang500-import/usr.sbin/makefs/ffs/ffs_bswap.c projects/clang500-import/usr.sbin/makefs/ffs/mkfs.c projects/clang500-import/usr.sbin/makefs/makefs.8 projects/clang500-import/usr.sbin/makefs/mtree.c Directory Properties: projects/clang500-import/ (props changed) projects/clang500-import/cddl/ (props changed) projects/clang500-import/cddl/contrib/opensolaris/ (props changed) projects/clang500-import/contrib/netbsd-tests/ (props changed) Modified: projects/clang500-import/bin/sh/eval.c ============================================================================== --- projects/clang500-import/bin/sh/eval.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/bin/sh/eval.c Fri May 19 21:20:01 2017 (r318561) @@ -1080,9 +1080,7 @@ evalcommand(union node *cmd, int flags, #endif mode = (cmdentry.u.index == EXECCMD)? 0 : REDIR_PUSH; if (flags == EV_BACKCMD) { - memout.nleft = 0; memout.nextc = memout.buf; - memout.bufsize = 64; mode |= REDIR_BACKQ; } savecmdname = commandname; @@ -1134,8 +1132,12 @@ cmddone: exitshell(exitstatus); if (flags == EV_BACKCMD) { backcmd->buf = memout.buf; - backcmd->nleft = memout.nextc - memout.buf; + backcmd->nleft = memout.buf != NULL ? + memout.nextc - memout.buf : 0; memout.buf = NULL; + memout.nextc = NULL; + memout.bufend = NULL; + memout.bufsize = 64; } if (cmdentry.u.index != EXECCMD) popredir(); Modified: projects/clang500-import/bin/sh/output.c ============================================================================== --- projects/clang500-import/bin/sh/output.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/bin/sh/output.c Fri May 19 21:20:01 2017 (r318561) @@ -71,9 +71,9 @@ __FBSDID("$FreeBSD$"); static int doformat_wr(void *, const char *, int); -struct output output = {NULL, 0, NULL, OUTBUFSIZ, 1, 0}; -struct output errout = {NULL, 0, NULL, 256, 2, 0}; -struct output memout = {NULL, 0, NULL, 0, MEM_OUT, 0}; +struct output output = {NULL, NULL, NULL, OUTBUFSIZ, 1, 0}; +struct output errout = {NULL, NULL, NULL, 256, 2, 0}; +struct output memout = {NULL, NULL, NULL, 64, MEM_OUT, 0}; struct output *out1 = &output; struct output *out2 = &errout; @@ -208,26 +208,26 @@ outbin(const void *data, size_t len, str void emptyoutbuf(struct output *dest) { - int offset; + int offset, newsize; if (dest->buf == NULL) { INTOFF; dest->buf = ckmalloc(dest->bufsize); dest->nextc = dest->buf; - dest->nleft = dest->bufsize; + dest->bufend = dest->buf + dest->bufsize; INTON; } else if (dest->fd == MEM_OUT) { - offset = dest->bufsize; + offset = dest->nextc - dest->buf; + newsize = dest->bufsize << 1; INTOFF; - dest->bufsize <<= 1; - dest->buf = ckrealloc(dest->buf, dest->bufsize); - dest->nleft = dest->bufsize - offset; + dest->buf = ckrealloc(dest->buf, newsize); + dest->bufsize = newsize; + dest->bufend = dest->buf + newsize; dest->nextc = dest->buf + offset; INTON; } else { flushout(dest); } - dest->nleft--; } @@ -248,20 +248,13 @@ flushout(struct output *dest) if (xwrite(dest->fd, dest->buf, dest->nextc - dest->buf) < 0) dest->flags |= OUTPUT_ERR; dest->nextc = dest->buf; - dest->nleft = dest->bufsize; } void freestdout(void) { - INTOFF; - if (output.buf) { - ckfree(output.buf); - output.buf = NULL; - output.nleft = 0; - } - INTON; + output.nextc = output.buf; } Modified: projects/clang500-import/bin/sh/output.h ============================================================================== --- projects/clang500-import/bin/sh/output.h Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/bin/sh/output.h Fri May 19 21:20:01 2017 (r318561) @@ -40,7 +40,7 @@ struct output { char *nextc; - int nleft; + char *bufend; char *buf; int bufsize; short fd; @@ -75,7 +75,7 @@ void fmtstr(char *, int, const char *, . void doformat(struct output *, const char *, va_list) __printflike(2, 0); int xwrite(int, const char *, int); -#define outc(c, file) (--(file)->nleft < 0? (emptyoutbuf(file), *(file)->nextc++ = (c)) : (*(file)->nextc++ = (c))) +#define outc(c, file) ((file)->nextc == (file)->bufend ? (emptyoutbuf(file), *(file)->nextc++ = (c)) : (*(file)->nextc++ = (c))) #define out1c(c) outc(c, out1); #define out2c(c) outcslow(c, out2); Modified: projects/clang500-import/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c ============================================================================== --- projects/clang500-import/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/cddl/contrib/opensolaris/lib/libzpool/common/kernel.c Fri May 19 21:20:01 2017 (r318561) @@ -368,7 +368,7 @@ cv_timedwait_hires(kcondvar_t *cv, kmute int flag) { int error; - timestruc_t ts; + timespec_t ts; hrtime_t delta; ASSERT(flag == 0 || flag == CALLOUT_FLAG_ABSOLUTE); @@ -381,8 +381,13 @@ top: if (delta <= 0) return (-1); - ts.tv_sec = delta / NANOSEC; - ts.tv_nsec = delta % NANOSEC; + clock_gettime(CLOCK_REALTIME, &ts); + ts.tv_sec += delta / NANOSEC; + ts.tv_nsec += delta % NANOSEC; + if (ts.tv_nsec >= NANOSEC) { + ts.tv_sec++; + ts.tv_nsec -= NANOSEC; + } ASSERT(mutex_owner(mp) == curthread); mp->m_owner = NULL; Modified: projects/clang500-import/cddl/usr.sbin/dtrace/tests/tools/exclude.sh ============================================================================== --- projects/clang500-import/cddl/usr.sbin/dtrace/tests/tools/exclude.sh Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/cddl/usr.sbin/dtrace/tests/tools/exclude.sh Fri May 19 21:20:01 2017 (r318561) @@ -139,11 +139,6 @@ exclude EXFAIL common/pid/tst.newprobes. exclude EXFAIL common/pid/tst.provregex2.ksh exclude EXFAIL common/pid/tst.provregex4.ksh -# libproc doesn't properly handle probe sites that correspond to multiple -# symbols. -exclude EXFAIL common/pid/tst.weak1.d -exclude EXFAIL common/pid/tst.weak2.d - # This test checks for a leading tab on a line before #define. That is illegal # on Solaris, but the clang pre-processor on FreeBSD is happy with code like # that. Modified: projects/clang500-import/contrib/netbsd-tests/fs/tmpfs/t_vnd.sh ============================================================================== --- projects/clang500-import/contrib/netbsd-tests/fs/tmpfs/t_vnd.sh Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/contrib/netbsd-tests/fs/tmpfs/t_vnd.sh Fri May 19 21:20:01 2017 (r318561) @@ -28,6 +28,10 @@ # Verifies that vnd works with files stored in tmpfs. # +# Begin FreeBSD +MD_DEVICE_FILE=md.device +# End FreeBSD + atf_test_case basic cleanup basic_head() { atf_set "descr" "Verifies that vnd works with files stored in tmpfs" @@ -41,7 +45,10 @@ basic_body() { # Begin FreeBSD if true; then atf_check -s eq:0 -o empty -e empty mkdir mnt - atf_check -s eq:0 -o empty -e empty mdmfs -F disk.img md3 mnt + atf_check -s eq:0 -o empty -e empty mdmfs -F disk.img md mnt + md_dev=$(df mnt | awk 'NR != 1 { print $1 }' | xargs basename) + atf_check test -c /dev/$md_dev # Sanity check + echo -n $md_dev > $TMPDIR/$MD_DEVICE_FILE else # End FreeBSD atf_check -s eq:0 -o empty -e empty vndconfig /dev/vnd3 disk.img @@ -67,31 +74,23 @@ basic_body() { done atf_check -s eq:0 -o empty -e empty umount mnt - # Begin FreeBSD - if true; then - atf_check -s eq:0 -o empty -e empty mdconfig -d -u 3 - else - # End FreeBSD atf_check -s eq:0 -o empty -e empty vndconfig -u /dev/vnd3 - # Begin FreeBSD - fi - # End FreeBSD test_unmount touch done } basic_cleanup() { + # Begin FreeBSD + if md_dev=$(cat $TMPDIR/$MD_DEVICE_FILE); then + echo "Will try disconnecting $md_dev" + else + echo "$MD_DEVICE_FILE doesn't exist in $TMPDIR; returning early" + return 0 + fi + # End FreeBSD if [ ! -f done ]; then umount mnt 2>/dev/null 1>&2 - # Begin FreeBSD - if true; then - [ ! -c /dev/md3 ] || mdconfig -d -u 3 - else - # End FreeBSD vndconfig -u /dev/vnd3 2>/dev/null 1>&2 - # Begin FreeBSD - fi - # End FreeBSD fi } Modified: projects/clang500-import/etc/Makefile ============================================================================== --- projects/clang500-import/etc/Makefile Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/etc/Makefile Fri May 19 21:20:01 2017 (r318561) @@ -7,9 +7,6 @@ FILESGROUPS= FILES # No need as it is empty and just causes rebuilds since this file does so much. UPDATE_DEPENDFILE= no -SUBDIR= \ - newsyslog.conf.d \ - syslog.d .if ${MK_SENDMAIL} != "no" SUBDIR+=sendmail @@ -253,9 +250,11 @@ distribution: .if ${MK_CASPER} != "no" ${_+_}cd ${.CURDIR}/casper; ${MAKE} install .endif + ${_+_}cd ${.CURDIR}/cron.d; ${MAKE} install ${_+_}cd ${.CURDIR}/defaults; ${MAKE} install ${_+_}cd ${.CURDIR}/devd; ${MAKE} install ${_+_}cd ${.CURDIR}/gss; ${MAKE} install + ${_+_}cd ${.CURDIR}/newsyslog.conf.d; ${MAKE} install .if ${MK_NTP} != "no" ${_+_}cd ${.CURDIR}/ntp; ${MAKE} install .endif @@ -265,6 +264,7 @@ distribution: .endif ${_+_}cd ${.CURDIR}/rc.d; ${MAKE} install ${_+_}cd ${SRCTOP}/share/termcap; ${MAKE} etc-termcap + ${_+_}cd ${.CURDIR}/syslog.d; ${MAKE} install ${_+_}cd ${SRCTOP}/usr.sbin/rmt; ${MAKE} etc-rmt ${_+_}cd ${.CURDIR}/pam.d; ${MAKE} install cd ${.CURDIR}; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 0444 \ Modified: projects/clang500-import/etc/crontab ============================================================================== --- projects/clang500-import/etc/crontab Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/etc/crontab Fri May 19 21:20:01 2017 (r318561) @@ -7,8 +7,6 @@ PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin # #minute hour mday month wday who command # -*/5 * * * * root /usr/libexec/atrun -# # Save some entropy so that /dev/random can re-seed on boot. */11 * * * * operator /usr/libexec/save-entropy # Modified: projects/clang500-import/etc/mtree/BSD.tests.dist ============================================================================== --- projects/clang500-import/etc/mtree/BSD.tests.dist Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/etc/mtree/BSD.tests.dist Fri May 19 21:20:01 2017 (r318561) @@ -622,6 +622,8 @@ .. file2c .. + getconf + .. grep .. gzip Modified: projects/clang500-import/lib/libc/stdlib/qsort.c ============================================================================== --- projects/clang500-import/lib/libc/stdlib/qsort.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/lib/libc/stdlib/qsort.c Fri May 19 21:20:01 2017 (r318561) @@ -41,7 +41,7 @@ typedef int cmp_t(void *, const void * typedef int cmp_t(const void *, const void *); #endif static inline char *med3(char *, char *, char *, cmp_t *, void *); -static inline void swapfunc(char *, char *, int, int, int); +static inline void swapfunc(char *, char *, size_t, int, int); #define MIN(a, b) ((a) < (b) ? a : b) @@ -49,7 +49,7 @@ static inline void swapfunc(char *, cha * Qsort routine from Bentley & McIlroy's "Engineering a Sort Function". */ #define swapcode(TYPE, parmi, parmj, n) { \ - long i = (n) / sizeof (TYPE); \ + size_t i = (n) / sizeof (TYPE); \ TYPE *pi = (TYPE *) (parmi); \ TYPE *pj = (TYPE *) (parmj); \ do { \ @@ -64,7 +64,7 @@ static inline void swapfunc(char *, cha es % sizeof(TYPE) ? 2 : es == sizeof(TYPE) ? 0 : 1; static inline void -swapfunc( char *a, char *b, int n, int swaptype_long, int swaptype_int) +swapfunc(char *a, char *b, size_t n, int swaptype_long, int swaptype_int) { if (swaptype_long <= 1) swapcode(long, a, b, n) @@ -117,7 +117,7 @@ qsort(void *a, size_t n, size_t es, cmp_ #endif { char *pa, *pb, *pc, *pd, *pl, *pm, *pn; - size_t d, r; + size_t d1, d2; int cmp_result; int swaptype_long, swaptype_int, swap_cnt; @@ -137,7 +137,8 @@ loop: SWAPINIT(long, a, es); pl = a; pn = (char *)a + (n - 1) * es; if (n > 40) { - d = (n / 8) * es; + size_t d = (n / 8) * es; + pl = med3(pl, pl + d, pl + 2 * d, cmp, thunk); pm = med3(pm - d, pm, pm + d, cmp, thunk); pn = med3(pn - 2 * d, pn - d, pn, cmp, thunk); @@ -182,21 +183,43 @@ loop: SWAPINIT(long, a, es); } pn = (char *)a + n * es; - r = MIN(pa - (char *)a, pb - pa); - vecswap(a, pb - r, r); - r = MIN(pd - pc, pn - pd - es); - vecswap(pb, pn - r, r); - if ((r = pb - pa) > es) + d1 = MIN(pa - (char *)a, pb - pa); + vecswap(a, pb - d1, d1); + d1 = MIN(pd - pc, pn - pd - es); + vecswap(pb, pn - d1, d1); + + d1 = pb - pa; + d2 = pd - pc; + if (d1 <= d2) { + /* Recurse on left partition, then iterate on right partition */ + if (d1 > es) { +#ifdef I_AM_QSORT_R + qsort_r(a, d1 / es, es, thunk, cmp); +#else + qsort(a, d1 / es, es, cmp); +#endif + } + if (d2 > es) { + /* Iterate rather than recurse to save stack space */ + /* qsort(pn - d2, d2 / es, es, cmp); */ + a = pn - d2; + n = d2 / es; + goto loop; + } + } else { + /* Recurse on right partition, then iterate on left partition */ + if (d2 > es) { #ifdef I_AM_QSORT_R - qsort_r(a, r / es, es, thunk, cmp); + qsort_r(pn - d2, d2 / es, es, thunk, cmp); #else - qsort(a, r / es, es, cmp); + qsort(pn - d2, d2 / es, es, cmp); #endif - if ((r = pd - pc) > es) { - /* Iterate rather than recurse to save stack space */ - a = pn - r; - n = r / es; - goto loop; + } + if (d1 > es) { + /* Iterate rather than recurse to save stack space */ + /* qsort(a, d1 / es, es, cmp); */ + n = d1 / es; + goto loop; + } } -/* qsort(pn - r, r / es, es, cmp);*/ } Modified: projects/clang500-import/lib/libc/tests/gen/Makefile ============================================================================== --- projects/clang500-import/lib/libc/tests/gen/Makefile Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/lib/libc/tests/gen/Makefile Fri May 19 21:20:01 2017 (r318561) @@ -13,6 +13,7 @@ ATF_TESTS_C+= popen_test ATF_TESTS_C+= posix_spawn_test ATF_TESTS_C+= wordexp_test ATF_TESTS_C+= dlopen_empty_test +ATF_TESTS_C+= realpath2_test # TODO: t_closefrom, t_cpuset, t_fmtcheck, t_randomid, # TODO: t_siginfo (fixes require further inspection) Copied: projects/clang500-import/lib/libc/tests/gen/realpath2_test.c (from r318559, head/lib/libc/tests/gen/realpath2_test.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/lib/libc/tests/gen/realpath2_test.c Fri May 19 21:20:01 2017 (r318561, copy of r318559, head/lib/libc/tests/gen/realpath2_test.c) @@ -0,0 +1,102 @@ +/* + * Copyright (c) 2017 Jan Kokemüller + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include + +#include + +ATF_TC(realpath_buffer_overflow); +ATF_TC_HEAD(realpath_buffer_overflow, tc) +{ + atf_tc_set_md_var(tc, "descr", + "Test for out of bounds read from 'left' array " + "(compile realpath.c with '-fsanitize=address')"); +} + +ATF_TC_BODY(realpath_buffer_overflow, tc) +{ + char path[MAXPATHLEN] = { 0 }; + char resb[MAXPATHLEN] = { 0 }; + size_t i; + + path[0] = 'a'; + path[1] = '/'; + for (i = 2; i < sizeof(path) - 1; ++i) { + path[i] = 'a'; + } + + ATF_REQUIRE(realpath(path, resb) == NULL); +} + +ATF_TC(realpath_empty_symlink); +ATF_TC_HEAD(realpath_empty_symlink, tc) +{ + atf_tc_set_md_var(tc, "descr", + "Test for correct behavior when encountering empty symlinks"); +} + +ATF_TC_BODY(realpath_empty_symlink, tc) +{ + char path[MAXPATHLEN] = { 0 }; + char slnk[MAXPATHLEN] = { 0 }; + char resb[MAXPATHLEN] = { 0 }; + int fd; + + (void)strlcat(slnk, "empty_symlink", sizeof(slnk)); + + ATF_REQUIRE(symlink("", slnk) == 0); + + fd = open("aaa", O_RDONLY | O_CREAT, 0600); + + ATF_REQUIRE(fd >= 0); + ATF_REQUIRE(close(fd) == 0); + + (void)strlcat(path, "empty_symlink", sizeof(path)); + (void)strlcat(path, "/aaa", sizeof(path)); + + ATF_REQUIRE_ERRNO(ENOENT, realpath(path, resb) == NULL); + + ATF_REQUIRE(unlink("aaa") == 0); + ATF_REQUIRE(unlink(slnk) == 0); +} + +ATF_TP_ADD_TCS(tp) +{ + + ATF_TP_ADD_TC(tp, realpath_buffer_overflow); + ATF_TP_ADD_TC(tp, realpath_empty_symlink); + + return atf_no_error(); +} Modified: projects/clang500-import/lib/libthr/thread/thr_attr.c ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_attr.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/lib/libthr/thread/thr_attr.c Fri May 19 21:20:01 2017 (r318561) @@ -607,7 +607,7 @@ _pthread_attr_setaffinity_np(pthread_att /* Kernel checks invalid bits, we check it here too. */ size_t i; for (i = kern_size; i < cpusetsize; ++i) { - if (((char *)cpusetp)[i]) + if (((const char *)cpusetp)[i]) return (EINVAL); } } Modified: projects/clang500-import/lib/libthr/thread/thr_exit.c ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_exit.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/lib/libthr/thread/thr_exit.c Fri May 19 21:20:01 2017 (r318561) @@ -119,7 +119,8 @@ _Unwind_GetCFA(struct _Unwind_Context *c #endif /* PIC */ static void -thread_unwind_cleanup(_Unwind_Reason_Code code, struct _Unwind_Exception *e) +thread_unwind_cleanup(_Unwind_Reason_Code code __unused, + struct _Unwind_Exception *e __unused) { /* * Specification said that _Unwind_Resume should not be used here, @@ -130,10 +131,10 @@ thread_unwind_cleanup(_Unwind_Reason_Cod } static _Unwind_Reason_Code -thread_unwind_stop(int version, _Unwind_Action actions, - int64_t exc_class, - struct _Unwind_Exception *exc_obj, - struct _Unwind_Context *context, void *stop_parameter) +thread_unwind_stop(int version __unused, _Unwind_Action actions, + int64_t exc_class __unused, + struct _Unwind_Exception *exc_obj __unused, + struct _Unwind_Context *context, void *stop_parameter __unused) { struct pthread *curthread = _get_curthread(); struct pthread_cleanup *cur; Modified: projects/clang500-import/lib/libthr/thread/thr_sig.c ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_sig.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/lib/libthr/thread/thr_sig.c Fri May 19 21:20:01 2017 (r318561) @@ -441,7 +441,7 @@ _thr_signal_init(int dlopened) } void -_thr_sigact_unload(struct dl_phdr_info *phdr_info) +_thr_sigact_unload(struct dl_phdr_info *phdr_info __unused) { #if 0 struct pthread *curthread = _get_curthread(); Modified: projects/clang500-import/lib/libthr/thread/thr_spec.c ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_spec.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/lib/libthr/thread/thr_spec.c Fri May 19 21:20:01 2017 (r318561) @@ -42,7 +42,7 @@ __FBSDID("$FreeBSD$"); #include "thr_private.h" -struct pthread_key _thread_keytable[PTHREAD_KEYS_MAX]; +static struct pthread_key _thread_keytable[PTHREAD_KEYS_MAX]; __weak_reference(_pthread_key_create, pthread_key_create); __weak_reference(_pthread_key_delete, pthread_key_delete); Modified: projects/clang500-import/lib/libthr/thread/thr_stack.c ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_stack.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/lib/libthr/thread/thr_stack.c Fri May 19 21:20:01 2017 (r318561) @@ -290,6 +290,19 @@ _thr_stack_alloc(struct pthread_attr *at return (-1); } +/* + * Disable this warning from clang: + * + * cast from 'char *' to + * 'struct stack *' increases required alignment from 1 to 8 + * [-Werror,-Wcast-align] + * spare_stack = (struct stack *) + */ +#ifdef __clang__ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wcast-align" +#endif + /* This function must be called with _thread_list_lock held. */ void _thr_stack_free(struct pthread_attr *attr) @@ -316,3 +329,7 @@ _thr_stack_free(struct pthread_attr *att attr->stackaddr_attr = NULL; } } + +#ifdef __clang__ +#pragma GCC diagnostic pop +#endif Modified: projects/clang500-import/lib/libthr/thread/thr_symbols.c ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_symbols.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/lib/libthr/thread/thr_symbols.c Fri May 19 21:20:01 2017 (r318561) @@ -37,6 +37,10 @@ __FBSDID("$FreeBSD$"); #include "thr_private.h" +#ifdef __clang__ +#pragma GCC diagnostic ignored "-Wmissing-variable-declarations" +#endif + /* A collection of symbols needed by debugger */ /* int _libthr_debug */ Modified: projects/clang500-import/lib/libthr/thread/thr_umtx.c ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_umtx.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/lib/libthr/thread/thr_umtx.c Fri May 19 21:20:01 2017 (r318561) @@ -168,7 +168,7 @@ __thr_umutex_timedlock(struct umutex *mt } int -__thr_umutex_unlock(struct umutex *mtx, uint32_t id) +__thr_umutex_unlock(struct umutex *mtx) { return (_umtx_op_err(mtx, UMTX_OP_MUTEX_UNLOCK, 0, 0, 0)); Modified: projects/clang500-import/lib/libthr/thread/thr_umtx.h ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_umtx.h Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/lib/libthr/thread/thr_umtx.h Fri May 19 21:20:01 2017 (r318561) @@ -44,7 +44,7 @@ int __thr_umutex_lock(struct umutex *mtx int __thr_umutex_lock_spin(struct umutex *mtx, uint32_t id) __hidden; int __thr_umutex_timedlock(struct umutex *mtx, uint32_t id, const struct timespec *timeout) __hidden; -int __thr_umutex_unlock(struct umutex *mtx, uint32_t id) __hidden; +int __thr_umutex_unlock(struct umutex *mtx) __hidden; int __thr_umutex_trylock(struct umutex *mtx) __hidden; int __thr_umutex_set_ceiling(struct umutex *mtx, uint32_t ceiling, uint32_t *oldceiling) __hidden; @@ -155,7 +155,7 @@ _thr_umutex_unlock2(struct umutex *mtx, if (atomic_cmpset_rel_32(&mtx->m_owner, id, noncst ? UMUTEX_RB_NOTRECOV : UMUTEX_UNOWNED)) return (0); - return (__thr_umutex_unlock(mtx, id)); + return (__thr_umutex_unlock(mtx)); } do { Modified: projects/clang500-import/libexec/rtld-elf/rtld.1 ============================================================================== --- projects/clang500-import/libexec/rtld-elf/rtld.1 Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/libexec/rtld-elf/rtld.1 Fri May 19 21:20:01 2017 (r318561) @@ -192,7 +192,7 @@ the directories specified by will be searched first followed by the set of built-in standard directories. This variable is unset for set-user-ID and set-group-ID programs. -.Ev LD_LIBRARY_PATH_FDS +.It Ev LD_LIBRARY_PATH_FDS A colon separated list of file descriptor numbers for library directories. This is intended for use within .Xr capsicum 4 Modified: projects/clang500-import/libexec/rtld-elf/rtld.c ============================================================================== --- projects/clang500-import/libexec/rtld-elf/rtld.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/libexec/rtld-elf/rtld.c Fri May 19 21:20:01 2017 (r318561) @@ -1,10 +1,14 @@ /*- * Copyright 1996, 1997, 1998, 1999, 2000 John D. Polstra. * Copyright 2003 Alexander Kabaev . - * Copyright 2009-2012 Konstantin Belousov . + * Copyright 2009-2013 Konstantin Belousov . * Copyright 2012 John Marino . + * Copyright 2014-2017 The FreeBSD Foundation * All rights reserved. * + * Portions of this software were developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -24,8 +28,6 @@ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - * $FreeBSD$ */ /* @@ -34,6 +36,9 @@ * John Polstra . */ +#include +__FBSDID("$FreeBSD$"); + #include #include #include @@ -115,8 +120,10 @@ static void objlist_push_head(Objlist *, static void objlist_push_tail(Objlist *, Obj_Entry *); static void objlist_put_after(Objlist *, Obj_Entry *, Obj_Entry *); static void objlist_remove(Objlist *, Obj_Entry *); +static int parse_args(char* argv[], int argc, bool *use_pathp, int *fdp); static int parse_integer(const char *); static void *path_enumerate(const char *, path_enum_proc, void *); +static void print_usage(const char *argv0); static void release_object(Obj_Entry *); static int relocate_object_dag(Obj_Entry *root, bool bind_now, Obj_Entry *rtldobj, int flags, RtldLockState *lockstate); @@ -345,12 +352,14 @@ _rtld(Elf_Addr *sp, func_ptr_type *exit_ const Elf_Phdr *phdr; Objlist initlist; RtldLockState lockstate; + struct stat st; Elf_Addr *argcp; char **argv, *argv0, **env, **envp, *kexecpath, *library_path_rpath; caddr_t imgentry; char buf[MAXPATHLEN]; - int argc, fd, i, mib[2], phnum; + int argc, fd, i, mib[2], phnum, rtld_argc; size_t len; + bool dir_enable, explicit_fd, search_in_path; /* * On entry, the dynamic linker itself has not been relocated yet. @@ -419,38 +428,75 @@ _rtld(Elf_Addr *sp, func_ptr_type *exit_ assert(aux_info[AT_PHDR] != NULL); phdr = (const Elf_Phdr *)aux_info[AT_PHDR]->a_un.a_ptr; if (phdr == obj_rtld.phdr) { + if (!trust) { + rtld_printf("Tainted process refusing to run binary %s\n", + argv0); + rtld_die(); + } dbg("opening main program in direct exec mode"); if (argc >= 2) { - argv0 = argv[1]; - fd = open(argv0, O_RDONLY | O_CLOEXEC | O_VERIFY); + rtld_argc = parse_args(argv, argc, &search_in_path, &fd); + argv0 = argv[rtld_argc]; + explicit_fd = (fd != -1); + if (!explicit_fd) + fd = open(argv0, O_RDONLY | O_CLOEXEC | O_VERIFY); if (fd == -1) { rtld_printf("Opening %s: %s\n", argv0, rtld_strerror(errno)); rtld_die(); } + if (fstat(fd, &st) == -1) { + _rtld_error("failed to fstat FD %d (%s): %s", fd, + explicit_fd ? "user-provided descriptor" : argv0, + rtld_strerror(errno)); + rtld_die(); + } + + /* + * Rough emulation of the permission checks done by + * execve(2), only Unix DACs are checked, ACLs are + * ignored. Preserve the semantic of disabling owner + * to execute if owner x bit is cleared, even if + * others x bit is enabled. + * mmap(2) does not allow to mmap with PROT_EXEC if + * binary' file comes from noexec mount. We cannot + * set VV_TEXT on the binary. + */ + dir_enable = false; + if (st.st_uid == geteuid()) { + if ((st.st_mode & S_IXUSR) != 0) + dir_enable = true; + } else if (st.st_gid == getegid()) { + if ((st.st_mode & S_IXGRP) != 0) + dir_enable = true; + } else if ((st.st_mode & S_IXOTH) != 0) { + dir_enable = true; + } + if (!dir_enable) { + rtld_printf("No execute permission for binary %s\n", + argv0); + rtld_die(); + } /* * For direct exec mode, argv[0] is the interpreter - * name, we must remove it and shift arguments left by - * 1 before invoking binary main. Since stack layout + * name, we must remove it and shift arguments left + * before invoking binary main. Since stack layout * places environment pointers and aux vectors right * after the terminating NULL, we must shift * environment and aux as well. - * XXX Shift will be > 1 when options are implemented. */ + main_argc = argc - rtld_argc; + for (i = 0; i <= main_argc; i++) + argv[i] = argv[i + rtld_argc]; + *argcp -= rtld_argc; + environ = env = envp = argv + main_argc + 1; do { - *argv = *(argv + 1); - argv++; - } while (*argv != NULL); - *argcp -= 1; - main_argc = argc - 1; - environ = env = envp = argv; - do { - *envp = *(envp + 1); + *envp = *(envp + rtld_argc); envp++; } while (*envp != NULL); aux = auxp = (Elf_Auxinfo *)envp; - auxpf = (Elf_Auxinfo *)(envp + 1); + auxpf = (Elf_Auxinfo *)(envp + rtld_argc); for (;; auxp++, auxpf++) { *auxp = *auxpf; if (auxp->a_type == AT_NULL) @@ -5236,6 +5282,81 @@ symlook_init_from_req(SymLook *dst, cons /* + * Parse a set of command-line arguments. + */ +static int +parse_args(char* argv[], int argc, bool *use_pathp, int *fdp) +{ + const char *arg; + int fd, i, j, arglen; + char opt; + + dbg("Parsing command-line arguments"); + *use_pathp = false; + *fdp = -1; + + for (i = 1; i < argc; i++ ) { + arg = argv[i]; + dbg("argv[%d]: '%s'", i, arg); + + /* + * rtld arguments end with an explicit "--" or with the first + * non-prefixed argument. + */ + if (strcmp(arg, "--") == 0) { + i++; + break; + } + if (arg[0] != '-') + break; + + /* + * All other arguments are single-character options that can + * be combined, so we need to search through `arg` for them. + */ + arglen = strlen(arg); + for (j = 1; j < arglen; j++) { + opt = arg[j]; + if (opt == 'h') { + print_usage(argv[0]); + rtld_die(); + } else if (opt == 'f') { + /* + * -f XX can be used to specify a descriptor for the + * binary named at the command line (i.e., the later + * argument will specify the process name but the + * descriptor is what will actually be executed) + */ + if (j != arglen - 1) { + /* -f must be the last option in, e.g., -abcf */ + _rtld_error("invalid options: %s", arg); + rtld_die(); + } + i++; + fd = parse_integer(argv[i]); + if (fd == -1) { + _rtld_error("invalid file descriptor: '%s'", + argv[i]); + rtld_die(); + } + *fdp = fd; + break; + /* TODO: + } else if (opt == 'p') { + *use_pathp = true; + */ + } else { + rtld_printf("invalid argument: '%s'\n", arg); + print_usage(argv[0]); + rtld_die(); + } + } + } + + return (i); +} + +/* * Parse a file descriptor number without pulling in more of libc (e.g. atoi). */ static int @@ -5262,6 +5383,21 @@ parse_integer(const char *str) return (n); } +static void +print_usage(const char *argv0) +{ + + rtld_printf("Usage: %s [-h] [-f ] [--] []\n" + "\n" + "Options:\n" + " -h Display this help message\n" + /* TODO: " -p Search in PATH for named binary\n" */ + " -f Execute instead of searching for \n" + " -- End of RTLD options\n" + " Name of process to execute\n" + " Arguments to the executed process\n", argv0); +} + /* * Overrides for libc_pic-provided functions. */ Modified: projects/clang500-import/sbin/ipfw/tables.c ============================================================================== --- projects/clang500-import/sbin/ipfw/tables.c Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/sbin/ipfw/tables.c Fri May 19 21:20:01 2017 (r318561) @@ -1260,16 +1260,14 @@ tentry_fill_key_type(char *arg, ipfw_obj if ((p = strchr(arg, ',')) != NULL) *p++ = '\0'; - if ((port = htons(strtol(arg, NULL, 10))) == 0) { + port = htons(strtol(arg, &pp, 10)); + if (*pp != '\0') { if ((sent = getservbyname(arg, NULL)) == NULL) errx(EX_DATAERR, "Unknown service: %s", arg); - else - key = sent->s_port; + port = sent->s_port; } - tfe->sport = port; - arg = p; } @@ -1304,16 +1302,14 @@ tentry_fill_key_type(char *arg, ipfw_obj if ((p = strchr(arg, ',')) != NULL) *p++ = '\0'; - if ((port = htons(strtol(arg, NULL, 10))) == 0) { + port = htons(strtol(arg, &pp, 10)); + if (*pp != '\0') { if ((sent = getservbyname(arg, NULL)) == NULL) errx(EX_DATAERR, "Unknown service: %s", arg); - else - key = sent->s_port; + port = sent->s_port; } - tfe->dport = port; - arg = p; } Modified: projects/clang500-import/share/man/man4/Makefile ============================================================================== --- projects/clang500-import/share/man/man4/Makefile Fri May 19 21:18:42 2017 (r318560) +++ projects/clang500-import/share/man/man4/Makefile Fri May 19 21:20:01 2017 (r318561) @@ -100,6 +100,7 @@ MAN= aac.4 \ cc_newreno.4 \ cc_vegas.4 \ ${_ccd.4} \ + ccr.4 \ cd.4 \ cdce.4 \ cfi.4 \ Copied: projects/clang500-import/share/man/man4/ccr.4 (from r318559, head/share/man/man4/ccr.4) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/share/man/man4/ccr.4 Fri May 19 21:20:01 2017 (r318561, copy of r318559, head/share/man/man4/ccr.4) @@ -0,0 +1,110 @@ +.\" Copyright (c) 2017, Chelsio Inc +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd May 16, 2017 +.Dt CCR 4 +.Os +.Sh NAME +.Nm ccr +.Nd "Chelsio T6 crypto accelerator driver" +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following lines in your +kernel configuration file: +.Bd -ragged -offset indeunt +.Cd "device ccr" +.Ed +.Pp +To load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +ccr_load="YES" *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Sat May 20 01:04:49 2017 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 10E4AD73C67 for ; Sat, 20 May 2017 01:04:49 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D6E001ECB; Sat, 20 May 2017 01:04:48 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v4K14l0d023098; Sat, 20 May 2017 01:04:47 GMT (envelope-from rmacklem@FreeBSD.org) Received: (from rmacklem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v4K14l43023097; Sat, 20 May 2017 01:04:47 GMT (envelope-from rmacklem@FreeBSD.org) Message-Id: <201705200104.v4K14l43023097@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rmacklem set sender to rmacklem@FreeBSD.org using -f From: Rick Macklem Date: Sat, 20 May 2017 01:04:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r318570 - projects/pnfs-planb-server/sys/fs/nfsserver X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 20 May 2017 01:04:49 -0000 Author: rmacklem Date: Sat May 20 01:04:47 2017 New Revision: 318570 URL: https://svnweb.freebsd.org/changeset/base/318570 Log: Check for the correct layout stateid when the server has already issued a layout to the client for the file. This check is required by RFC5661. Modified: projects/pnfs-planb-server/sys/fs/nfsserver/nfs_nfsdstate.c Modified: projects/pnfs-planb-server/sys/fs/nfsserver/nfs_nfsdstate.c ============================================================================== --- projects/pnfs-planb-server/sys/fs/nfsserver/nfs_nfsdstate.c Sat May 20 01:04:19 2017 (r318569) +++ projects/pnfs-planb-server/sys/fs/nfsserver/nfs_nfsdstate.c Sat May 20 01:04:47 2017 (r318570) @@ -6251,6 +6251,16 @@ nfsrv_layoutget(struct nfsrv_descript *n error = nfsrv_findlayout(nd, &fh, p, &lyp); NFSD_DEBUG(4, "layoutget findlay=%d\n", error); if (error == 0) { + /* + * Not sure if the seqid must be the same, so I won't check it. + */ + if (stateidp->other[0] != lyp->lay_stateid.other[0] || + stateidp->other[1] != lyp->lay_stateid.other[1] || + stateidp->other[2] != lyp->lay_stateid.other[2]) { + NFSUNLOCKLAYOUT(lhyp); + NFSD_DEBUG(1, "ret bad stateid\n"); + return (NFSERR_BADSTATEID); + } if (*iomode == NFSLAYOUTIOMODE_RW) lyp->lay_rw = 1; else @@ -6260,9 +6270,6 @@ nfsrv_layoutget(struct nfsrv_descript *n if (++lyp->lay_stateid.seqid == 0) lyp->lay_stateid.seqid = 1; stateidp->seqid = lyp->lay_stateid.seqid; - stateidp->other[0] = lyp->lay_stateid.other[0]; - stateidp->other[1] = lyp->lay_stateid.other[1]; - stateidp->other[2] = lyp->lay_stateid.other[2]; NFSUNLOCKLAYOUT(lhyp); NFSD_DEBUG(4, "ret fnd layout\n"); return (0);