svn commit: r321756 - in projects/runtime-coverage: . contrib/ipfilter contrib/libarchive/libarchive contrib/llvm/include/llvm/CodeGen/GlobalISel contrib/llvm/include/llvm/Support contrib/llvm/incl...
Ngie Cooper
ngie at FreeBSD.org
Mon Jul 31 04:20:27 UTC 2017
Author: ngie
Date: Mon Jul 31 04:20:21 2017
New Revision: 321756
URL: https://svnweb.freebsd.org/changeset/base/321756
Log:
MFhead at r321755
Added:
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslparseop.c
- copied unchanged from r321755, head/sys/contrib/dev/acpica/compiler/aslparseop.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/dispatcher/dspkginit.c
- copied unchanged from r321755, head/sys/contrib/dev/acpica/components/dispatcher/dspkginit.c
projects/runtime-coverage/sys/dev/iicbus/nxprtc.c
- copied unchanged from r321755, head/sys/dev/iicbus/nxprtc.c
Deleted:
projects/runtime-coverage/sys/dev/iicbus/pcf8563.c
projects/runtime-coverage/sys/dev/iicbus/pcf8563reg.h
projects/runtime-coverage/sys/net/flowtable.c
projects/runtime-coverage/sys/net/flowtable.h
projects/runtime-coverage/usr.bin/netstat/flowtable.c
Modified:
projects/runtime-coverage/Makefile
projects/runtime-coverage/Makefile.inc1
projects/runtime-coverage/UPDATING
projects/runtime-coverage/contrib/ipfilter/arc4random.c
projects/runtime-coverage/contrib/libarchive/libarchive/archive_cryptor_private.h
projects/runtime-coverage/contrib/libarchive/libarchive/archive_write_set_format_ar.c
projects/runtime-coverage/contrib/llvm/include/llvm/CodeGen/GlobalISel/InstructionSelector.h
projects/runtime-coverage/contrib/llvm/include/llvm/Support/CommandLine.h
projects/runtime-coverage/contrib/llvm/include/llvm/Support/TargetRegistry.h
projects/runtime-coverage/contrib/llvm/include/llvm/Transforms/Utils/LoopUtils.h
projects/runtime-coverage/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp
projects/runtime-coverage/contrib/llvm/lib/CodeGen/InlineSpiller.cpp
projects/runtime-coverage/contrib/llvm/lib/CodeGen/RegAllocBase.cpp
projects/runtime-coverage/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
projects/runtime-coverage/contrib/llvm/lib/Option/OptTable.cpp
projects/runtime-coverage/contrib/llvm/lib/Support/CommandLine.cpp
projects/runtime-coverage/contrib/llvm/lib/Support/ErrorHandling.cpp
projects/runtime-coverage/contrib/llvm/lib/Support/TargetRegistry.cpp
projects/runtime-coverage/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
projects/runtime-coverage/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp
projects/runtime-coverage/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.td
projects/runtime-coverage/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
projects/runtime-coverage/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ14.td
projects/runtime-coverage/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
projects/runtime-coverage/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp
projects/runtime-coverage/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp
projects/runtime-coverage/contrib/llvm/lib/Transforms/Utils/LoopUtils.cpp
projects/runtime-coverage/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
projects/runtime-coverage/contrib/llvm/tools/clang/include/clang/AST/Type.h
projects/runtime-coverage/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp
projects/runtime-coverage/contrib/llvm/tools/clang/lib/AST/Type.cpp
projects/runtime-coverage/contrib/llvm/tools/clang/lib/Basic/DiagnosticIDs.cpp
projects/runtime-coverage/contrib/llvm/tools/clang/lib/Basic/Version.cpp
projects/runtime-coverage/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.cpp
projects/runtime-coverage/contrib/llvm/tools/clang/lib/Driver/Driver.cpp
projects/runtime-coverage/contrib/llvm/tools/clang/lib/Headers/unwind.h
projects/runtime-coverage/contrib/llvm/tools/clang/lib/Lex/ScratchBuffer.cpp
projects/runtime-coverage/contrib/llvm/tools/clang/lib/Sema/SemaCodeComplete.cpp
projects/runtime-coverage/contrib/llvm/tools/clang/tools/clang-format/ClangFormat.cpp
projects/runtime-coverage/contrib/llvm/tools/lld/COFF/Config.h
projects/runtime-coverage/contrib/llvm/tools/lld/COFF/Driver.cpp
projects/runtime-coverage/contrib/llvm/tools/lld/ELF/InputFiles.cpp
projects/runtime-coverage/contrib/llvm/tools/lld/ELF/InputFiles.h
projects/runtime-coverage/contrib/llvm/tools/lld/ELF/SymbolTable.cpp
projects/runtime-coverage/contrib/llvm/tools/lld/lib/ReaderWriter/MachO/ObjCPass.cpp
projects/runtime-coverage/contrib/llvm/tools/lldb/include/lldb/API/SBAttachInfo.h
projects/runtime-coverage/contrib/llvm/tools/lldb/include/lldb/API/SBBreakpoint.h
projects/runtime-coverage/contrib/llvm/tools/lldb/include/lldb/API/SBProcess.h
projects/runtime-coverage/etc/rc.d/nfsd
projects/runtime-coverage/lib/clang/include/clang/Basic/Version.inc
projects/runtime-coverage/lib/clang/include/clang/Config/config.h
projects/runtime-coverage/lib/clang/include/lld/Config/Version.inc
projects/runtime-coverage/lib/clang/include/llvm/Support/VCSRevision.h
projects/runtime-coverage/lib/clang/libllvm/Makefile
projects/runtime-coverage/lib/libc/x86/sys/__vdso_gettc.c
projects/runtime-coverage/lib/libprocstat/libprocstat.3
projects/runtime-coverage/libexec/rtld-elf/rtld.c
projects/runtime-coverage/release/arm/BANANAPI.conf
projects/runtime-coverage/release/arm/CUBIEBOARD2.conf
projects/runtime-coverage/sbin/umount/umount.8
projects/runtime-coverage/sbin/umount/umount.c
projects/runtime-coverage/share/man/man4/rtwn.4
projects/runtime-coverage/share/man/man9/taskqueue.9
projects/runtime-coverage/sys/amd64/amd64/genassym.c
projects/runtime-coverage/sys/amd64/linux/linux_sysvec.c
projects/runtime-coverage/sys/amd64/linux32/linux32_sysvec.c
projects/runtime-coverage/sys/arm/allwinner/clkng/ccu_a64.c
projects/runtime-coverage/sys/arm/arm/mpcore_timer.c
projects/runtime-coverage/sys/arm/arm/pmap-v6.c
projects/runtime-coverage/sys/arm/conf/GENERIC
projects/runtime-coverage/sys/arm/freescale/imx/imx_i2c.c
projects/runtime-coverage/sys/arm/include/pte-v6.h
projects/runtime-coverage/sys/arm/mv/mv_machdep.c
projects/runtime-coverage/sys/boot/efi/libefi/efinet.c
projects/runtime-coverage/sys/cam/ata/ata_da.c
projects/runtime-coverage/sys/compat/linux/linux_vdso.c
projects/runtime-coverage/sys/compat/linux/linux_vdso.h
projects/runtime-coverage/sys/compat/linuxkpi/common/src/linux_hrtimer.c
projects/runtime-coverage/sys/conf/NOTES
projects/runtime-coverage/sys/conf/files
projects/runtime-coverage/sys/conf/options
projects/runtime-coverage/sys/contrib/dev/acpica/acpica_prep.sh
projects/runtime-coverage/sys/contrib/dev/acpica/changes.txt
projects/runtime-coverage/sys/contrib/dev/acpica/common/acfileio.c
projects/runtime-coverage/sys/contrib/dev/acpica/common/adisasm.c
projects/runtime-coverage/sys/contrib/dev/acpica/common/adwalk.c
projects/runtime-coverage/sys/contrib/dev/acpica/common/ahpredef.c
projects/runtime-coverage/sys/contrib/dev/acpica/common/ahtable.c
projects/runtime-coverage/sys/contrib/dev/acpica/common/dmtable.c
projects/runtime-coverage/sys/contrib/dev/acpica/common/dmtbinfo.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslanalyze.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslbtypes.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslcodegen.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslcompile.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslcompiler.h
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslcompiler.l
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslcstyle.y
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/asldefine.h
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslerror.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslexternal.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslfold.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslglobal.h
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslhelp.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslhelpers.y
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslkeywords.y
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/asllength.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/asllisting.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslload.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/asllookup.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslmap.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslmapoutput.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslmessages.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslmessages.h
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslmethod.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/asloffset.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslopcodes.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslopt.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/asloptions.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslpld.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslpredef.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslprimaries.y
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslprintf.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslresource.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslresources.y
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslrules.y
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslstartup.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslsupport.y
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/asltokens.y
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/asltransform.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/asltree.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/asltypes.h
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslutils.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslwalks.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/aslxref.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/cvcompiler.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/cvdisasm.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/cvparser.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/dtcompile.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/dtcompiler.h
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/dttemplate.h
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/dtutils.c
projects/runtime-coverage/sys/contrib/dev/acpica/compiler/prmacros.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/debugger/dbdisply.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/disassembler/dmopcode.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/dispatcher/dsfield.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/dispatcher/dsobject.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/dispatcher/dsopcode.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/executer/excreate.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/executer/exdump.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/executer/exmisc.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/executer/exoparg2.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/hardware/hwregs.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/hardware/hwxfsleep.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/namespace/nsaccess.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/namespace/nsarguments.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/namespace/nsinit.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/namespace/nsnames.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/namespace/nsprepkg.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/parser/psloop.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/parser/psobject.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/resources/rsxface.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/tables/tbdata.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/tables/tbinstal.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/tables/tbutils.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/tables/tbxface.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/tables/tbxfload.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/utilities/uthex.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/utilities/utmath.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/utilities/utmisc.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/utilities/utobject.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/utilities/utresrc.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/utilities/utstate.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/utilities/utstrtoul64.c
projects/runtime-coverage/sys/contrib/dev/acpica/components/utilities/uttrack.c
projects/runtime-coverage/sys/contrib/dev/acpica/include/acapps.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/acdisasm.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/acdispat.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/aclocal.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/acnames.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/acobject.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/acpi.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/acpixf.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/actables.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/actbl.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/actbl2.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/actypes.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/acutils.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/platform/acenv.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/platform/acfreebsd.h
projects/runtime-coverage/sys/contrib/dev/acpica/include/platform/acgcc.h
projects/runtime-coverage/sys/dev/acpica/acpi.c
projects/runtime-coverage/sys/dev/bnxt/if_bnxt.c
projects/runtime-coverage/sys/dev/cxgbe/iw_cxgbe/cm.c
projects/runtime-coverage/sys/dev/etherswitch/e6000sw/e6000sw.c
projects/runtime-coverage/sys/dev/etherswitch/e6000sw/e6000swreg.h
projects/runtime-coverage/sys/dev/ichwd/ichwd.c
projects/runtime-coverage/sys/dev/iicbus/ds1307.c
projects/runtime-coverage/sys/dev/iicbus/ds1307reg.h
projects/runtime-coverage/sys/dev/isp/isp.c
projects/runtime-coverage/sys/dev/ixl/ixl_txrx.c
projects/runtime-coverage/sys/dev/ksyms/ksyms.c
projects/runtime-coverage/sys/dev/mmc/mmc.c
projects/runtime-coverage/sys/dev/mpr/mpr.c
projects/runtime-coverage/sys/dev/mpr/mpr_pci.c
projects/runtime-coverage/sys/dev/mpr/mpr_sas_lsi.c
projects/runtime-coverage/sys/dev/mpr/mpr_table.c
projects/runtime-coverage/sys/dev/mpr/mpr_table.h
projects/runtime-coverage/sys/dev/mpr/mprvar.h
projects/runtime-coverage/sys/dev/mps/mps.c
projects/runtime-coverage/sys/dev/mps/mps_pci.c
projects/runtime-coverage/sys/dev/mps/mps_sas_lsi.c
projects/runtime-coverage/sys/dev/mps/mps_table.c
projects/runtime-coverage/sys/dev/mps/mps_table.h
projects/runtime-coverage/sys/dev/mps/mpsvar.h
projects/runtime-coverage/sys/dev/ow/owc_gpiobus.c
projects/runtime-coverage/sys/dev/rtwn/if_rtwnreg.h
projects/runtime-coverage/sys/dev/rtwn/rtl8188e/r88e_rx.c
projects/runtime-coverage/sys/dev/rtwn/usb/rtwn_usb_attach.c
projects/runtime-coverage/sys/dev/rtwn/usb/rtwn_usb_ep.c
projects/runtime-coverage/sys/dev/rtwn/usb/rtwn_usb_rx.c
projects/runtime-coverage/sys/dev/rtwn/usb/rtwn_usb_var.h
projects/runtime-coverage/sys/dev/sdhci/sdhci.c
projects/runtime-coverage/sys/dev/sdhci/sdhci.h
projects/runtime-coverage/sys/dev/sdhci/sdhci_acpi.c
projects/runtime-coverage/sys/dev/sdhci/sdhci_pci.c
projects/runtime-coverage/sys/dev/uart/uart_bus_pci.c
projects/runtime-coverage/sys/dev/usb/wlan/if_rsu.c
projects/runtime-coverage/sys/dev/usb/wlan/if_zyd.c
projects/runtime-coverage/sys/dev/virtio/network/if_vtnetvar.h
projects/runtime-coverage/sys/fs/nfs/nfs_commonkrpc.c
projects/runtime-coverage/sys/fs/nfs/nfs_commonsubs.c
projects/runtime-coverage/sys/fs/nfs/nfscl.h
projects/runtime-coverage/sys/fs/nfsclient/nfs_clbio.c
projects/runtime-coverage/sys/fs/nfsclient/nfs_clport.c
projects/runtime-coverage/sys/fs/nfsclient/nfs_clrpcops.c
projects/runtime-coverage/sys/fs/nfsclient/nfs_clstate.c
projects/runtime-coverage/sys/fs/nfsclient/nfs_clvfsops.c
projects/runtime-coverage/sys/fs/nfsclient/nfs_clvnops.c
projects/runtime-coverage/sys/fs/nfsclient/nfsmount.h
projects/runtime-coverage/sys/i386/i386/genassym.c
projects/runtime-coverage/sys/i386/linux/linux_sysvec.c
projects/runtime-coverage/sys/kern/kern_linker.c
projects/runtime-coverage/sys/kern/kern_mutex.c
projects/runtime-coverage/sys/kern/kern_sig.c
projects/runtime-coverage/sys/kern/subr_pctrie.c
projects/runtime-coverage/sys/kern/subr_rtc.c
projects/runtime-coverage/sys/kern/subr_taskqueue.c
projects/runtime-coverage/sys/mips/conf/TL-WDR4300
projects/runtime-coverage/sys/net/if_stf.c
projects/runtime-coverage/sys/net/iflib.c
projects/runtime-coverage/sys/net/iflib.h
projects/runtime-coverage/sys/net/route.c
projects/runtime-coverage/sys/netinet/cc/cc_cubic.c
projects/runtime-coverage/sys/netinet/ip_output.c
projects/runtime-coverage/sys/netinet6/ip6_output.c
projects/runtime-coverage/sys/nfs/nfs_nfssvc.c
projects/runtime-coverage/sys/nfs/nfssvc.h
projects/runtime-coverage/sys/sys/ata.h
projects/runtime-coverage/sys/sys/clock.h
projects/runtime-coverage/sys/sys/copyright.h
projects/runtime-coverage/sys/sys/param.h
projects/runtime-coverage/sys/sys/pctrie.h
projects/runtime-coverage/sys/sys/taskqueue.h
projects/runtime-coverage/sys/sys/time.h
projects/runtime-coverage/tests/sys/geom/class/gate/ggate_test.sh
projects/runtime-coverage/tools/tools/nanobsd/defaults.sh
projects/runtime-coverage/tools/tools/nanobsd/legacy.sh
projects/runtime-coverage/usr.bin/netstat/Makefile
projects/runtime-coverage/usr.bin/netstat/main.c
projects/runtime-coverage/usr.bin/netstat/netstat.h
projects/runtime-coverage/usr.bin/w/w.c
projects/runtime-coverage/usr.sbin/acpi/acpidb/Makefile
projects/runtime-coverage/usr.sbin/acpi/iasl/Makefile
projects/runtime-coverage/usr.sbin/bhyve/pci_e82545.c
projects/runtime-coverage/usr.sbin/bhyve/vga.c (contents, props changed)
projects/runtime-coverage/usr.sbin/binmiscctl/binmiscctl.c
projects/runtime-coverage/usr.sbin/bsdinstall/scripts/zfsboot
projects/runtime-coverage/usr.sbin/mpsutil/mps_cmd.c
projects/runtime-coverage/usr.sbin/prometheus_sysctl_exporter/prometheus_sysctl_exporter.c
Directory Properties:
projects/runtime-coverage/ (props changed)
projects/runtime-coverage/contrib/compiler-rt/ (props changed)
projects/runtime-coverage/contrib/ipfilter/ (props changed)
projects/runtime-coverage/contrib/libarchive/ (props changed)
projects/runtime-coverage/contrib/libc++/ (props changed)
projects/runtime-coverage/contrib/llvm/ (props changed)
projects/runtime-coverage/contrib/llvm/tools/clang/ (props changed)
projects/runtime-coverage/contrib/llvm/tools/lld/ (props changed)
projects/runtime-coverage/contrib/llvm/tools/lldb/ (props changed)
projects/runtime-coverage/sys/contrib/dev/acpica/ (props changed)
Modified: projects/runtime-coverage/Makefile
==============================================================================
--- projects/runtime-coverage/Makefile Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/Makefile Mon Jul 31 04:20:21 2017 (r321756)
@@ -441,14 +441,22 @@ TARGET_ARCHES_${target}?= ${target}
MAKE_PARAMS_riscv?= CROSS_TOOLCHAIN=riscv64-gcc
-# XXX Remove riscv from universe if the required toolchain package is missing.
-.if !exists(/usr/local/share/toolchains/riscv64-gcc.mk) && ${TARGETS:Mriscv}
-_UNIVERSE_TARGETS:= ${_UNIVERSE_TARGETS:Nriscv}
-universe: universe_riscv_skip .PHONY
-universe_epilogue: universe_riscv_skip .PHONY
-universe_riscv_skip: universe_prologue .PHONY
- @echo ">> riscv skipped - install riscv64-xtoolchain-gcc port or package to build"
+# XXX Remove architectures only supported by external toolchain from universe
+# if required toolchain packages are missing.
+TOOLCHAINS_riscv= riscv64
+.for target in riscv
+.if ${_UNIVERSE_TARGETS:M${target}}
+.for toolchain in ${TOOLCHAINS_${target}}
+.if !exists(/usr/local/share/toolchains/${toolchain}-gcc.mk)
+_UNIVERSE_TARGETS:= ${_UNIVERSE_TARGETS:N${target}}
+universe: universe_${toolchain}_skip .PHONY
+universe_epilogue: universe_${toolchain}_skip .PHONY
+universe_${toolchain}_skip: universe_prologue .PHONY
+ @echo ">> ${target} skipped - install ${toolchain}-xtoolchain-gcc port or package to build"
.endif
+.endfor
+.endif
+.endfor
.if defined(UNIVERSE_TARGET)
MAKE_JUST_WORLDS= YES
Modified: projects/runtime-coverage/Makefile.inc1
==============================================================================
--- projects/runtime-coverage/Makefile.inc1 Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/Makefile.inc1 Mon Jul 31 04:20:21 2017 (r321756)
@@ -624,8 +624,7 @@ XCFLAGS+= -isystem ${WORLDTMP}/usr/include -L${WORLDTM
# combined with --sysroot.
XCFLAGS+= -B${WORLDTMP}/usr/lib
# Force using libc++ for external GCC.
-# XXX: This should be checking MK_GNUCXX == no
-.if ${X_COMPILER_VERSION} >= 40800
+.if ${X_COMPILER_TYPE} == gcc && ${X_COMPILER_VERSION} >= 40800
XCXXFLAGS+= -isystem ${WORLDTMP}/usr/include/c++/v1 -std=c++11 \
-nostdinc++
.endif
Modified: projects/runtime-coverage/UPDATING
==============================================================================
--- projects/runtime-coverage/UPDATING Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/UPDATING Mon Jul 31 04:20:21 2017 (r321756)
@@ -51,6 +51,13 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12.x IS SLOW:
****************************** SPECIAL WARNING: ******************************
+20170728:
+ As of r321665, an NFSv4 server configuration that services
+ Kerberos mounts or clients that do not support the uid/gid in
+ owner/owner_group string capability, must explicitly enable
+ the nfsuserd daemon by adding nfsuserd_enable="YES" to the
+ machine's /etc/rc.conf file.
+
20170722:
Clang, llvm, lldb, compiler-rt and libc++ have been upgraded to 5.0.0.
Please see the 20141231 entry below for information about prerequisites
Modified: projects/runtime-coverage/contrib/ipfilter/arc4random.c
==============================================================================
--- projects/runtime-coverage/contrib/ipfilter/arc4random.c Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/ipfilter/arc4random.c Mon Jul 31 04:20:21 2017 (r321756)
@@ -109,9 +109,9 @@ arc4_randomstir (void)
/*
* Throw away the first N words of output, as suggested in the
* paper "Weaknesses in the Key Scheduling Algorithm of RC4"
- * by Fluher, Mantin, and Shamir. (N = 256 in our case.)
+ * by Fluher, Mantin, and Shamir. (N = 768 in our case.)
*/
- for (n = 0; n < 256*4; n++)
+ for (n = 0; n < 768*4; n++)
arc4_randbyte();
MUTEX_EXIT(&arc4_mtx);
}
Modified: projects/runtime-coverage/contrib/libarchive/libarchive/archive_cryptor_private.h
==============================================================================
--- projects/runtime-coverage/contrib/libarchive/libarchive/archive_cryptor_private.h Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/libarchive/libarchive/archive_cryptor_private.h Mon Jul 31 04:20:21 2017 (r321756)
@@ -64,7 +64,7 @@ typedef struct {
} archive_crypto_ctx;
#elif defined(_WIN32) && !defined(__CYGWIN__) && defined(HAVE_BCRYPT_H)
-#include <Bcrypt.h>
+#include <bcrypt.h>
/* Common in other bcrypt implementations, but missing from VS2008. */
#ifndef BCRYPT_SUCCESS
Modified: projects/runtime-coverage/contrib/libarchive/libarchive/archive_write_set_format_ar.c
==============================================================================
--- projects/runtime-coverage/contrib/libarchive/libarchive/archive_write_set_format_ar.c Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/libarchive/libarchive/archive_write_set_format_ar.c Mon Jul 31 04:20:21 2017 (r321756)
@@ -374,13 +374,14 @@ archive_write_ar_data(struct archive_write *a, const v
return (ARCHIVE_WARN);
}
- ar->strtab = (char *)malloc(s);
+ ar->strtab = (char *)malloc(s + 1);
if (ar->strtab == NULL) {
archive_set_error(&a->archive, ENOMEM,
"Can't allocate strtab buffer");
return (ARCHIVE_FATAL);
}
- strncpy(ar->strtab, buff, s);
+ memcpy(ar->strtab, buff, s);
+ ar->strtab[s] = '\0';
ar->has_strtab = 1;
}
Modified: projects/runtime-coverage/contrib/llvm/include/llvm/CodeGen/GlobalISel/InstructionSelector.h
==============================================================================
--- projects/runtime-coverage/contrib/llvm/include/llvm/CodeGen/GlobalISel/InstructionSelector.h Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/include/llvm/CodeGen/GlobalISel/InstructionSelector.h Mon Jul 31 04:20:21 2017 (r321756)
@@ -40,7 +40,8 @@ class TargetRegisterInfo;
/// This is convenient because std::bitset does not have a constructor
/// with an initializer list of set bits.
///
-/// Each InstructionSelector subclass should define a PredicateBitset class with:
+/// Each InstructionSelector subclass should define a PredicateBitset class
+/// with:
/// const unsigned MAX_SUBTARGET_PREDICATES = 192;
/// using PredicateBitset = PredicateBitsetImpl<MAX_SUBTARGET_PREDICATES>;
/// and updating the constant to suit the target. Tablegen provides a suitable
@@ -102,7 +103,8 @@ enum {
/// - OpIdx - Operand index
/// - Expected integer
GIM_CheckConstantInt,
- /// Check the operand is a specific literal integer (i.e. MO.isImm() or MO.isCImm() is true).
+ /// Check the operand is a specific literal integer (i.e. MO.isImm() or
+ /// MO.isCImm() is true).
/// - InsnID - Instruction ID
/// - OpIdx - Operand index
/// - Expected integer
Modified: projects/runtime-coverage/contrib/llvm/include/llvm/Support/CommandLine.h
==============================================================================
--- projects/runtime-coverage/contrib/llvm/include/llvm/Support/CommandLine.h Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/include/llvm/Support/CommandLine.h Mon Jul 31 04:20:21 2017 (r321756)
@@ -66,15 +66,12 @@ bool ParseCommandLineOptions(int argc, const char *con
void ParseEnvironmentOptions(const char *progName, const char *envvar,
const char *Overview = "");
-// Function pointer type for printing version information.
-using VersionPrinterTy = std::function<void(raw_ostream &)>;
-
///===---------------------------------------------------------------------===//
/// SetVersionPrinter - Override the default (LLVM specific) version printer
/// used to print out the version when --version is given
/// on the command line. This allows other systems using the
/// CommandLine utilities to print their own version string.
-void SetVersionPrinter(VersionPrinterTy func);
+void SetVersionPrinter(void (*func)());
///===---------------------------------------------------------------------===//
/// AddExtraVersionPrinter - Add an extra printer to use in addition to the
@@ -83,7 +80,7 @@ void SetVersionPrinter(VersionPrinterTy func);
/// which will be called after the basic LLVM version
/// printing is complete. Each can then add additional
/// information specific to the tool.
-void AddExtraVersionPrinter(VersionPrinterTy func);
+void AddExtraVersionPrinter(void (*func)());
// PrintOptionValues - Print option values.
// With -print-options print the difference between option values and defaults.
Modified: projects/runtime-coverage/contrib/llvm/include/llvm/Support/TargetRegistry.h
==============================================================================
--- projects/runtime-coverage/contrib/llvm/include/llvm/Support/TargetRegistry.h Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/include/llvm/Support/TargetRegistry.h Mon Jul 31 04:20:21 2017 (r321756)
@@ -599,7 +599,7 @@ struct TargetRegistry {
/// printRegisteredTargetsForVersion - Print the registered targets
/// appropriately for inclusion in a tool's version output.
- static void printRegisteredTargetsForVersion(raw_ostream &OS);
+ static void printRegisteredTargetsForVersion();
/// @name Registry Access
/// @{
Modified: projects/runtime-coverage/contrib/llvm/include/llvm/Transforms/Utils/LoopUtils.h
==============================================================================
--- projects/runtime-coverage/contrib/llvm/include/llvm/Transforms/Utils/LoopUtils.h Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/include/llvm/Transforms/Utils/LoopUtils.h Mon Jul 31 04:20:21 2017 (r321756)
@@ -531,8 +531,10 @@ Value *createTargetReduction(IRBuilder<> &B, const Tar
/// Get the intersection (logical and) of all of the potential IR flags
/// of each scalar operation (VL) that will be converted into a vector (I).
+/// If OpValue is non-null, we only consider operations similar to OpValue
+/// when intersecting.
/// Flag set: NSW, NUW, exact, and all of fast-math.
-void propagateIRFlags(Value *I, ArrayRef<Value *> VL);
+void propagateIRFlags(Value *I, ArrayRef<Value *> VL, Value *OpValue = nullptr);
} // end namespace llvm
Modified: projects/runtime-coverage/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -4016,14 +4016,18 @@ static bool IsOperandAMemoryOperand(CallInst *CI, Inli
return true;
}
+// Max number of memory uses to look at before aborting the search to conserve
+// compile time.
+static constexpr int MaxMemoryUsesToScan = 20;
+
/// Recursively walk all the uses of I until we find a memory use.
/// If we find an obviously non-foldable instruction, return true.
/// Add the ultimately found memory instructions to MemoryUses.
static bool FindAllMemoryUses(
Instruction *I,
SmallVectorImpl<std::pair<Instruction *, unsigned>> &MemoryUses,
- SmallPtrSetImpl<Instruction *> &ConsideredInsts,
- const TargetLowering &TLI, const TargetRegisterInfo &TRI) {
+ SmallPtrSetImpl<Instruction *> &ConsideredInsts, const TargetLowering &TLI,
+ const TargetRegisterInfo &TRI, int SeenInsts = 0) {
// If we already considered this instruction, we're done.
if (!ConsideredInsts.insert(I).second)
return false;
@@ -4036,8 +4040,12 @@ static bool FindAllMemoryUses(
// Loop over all the uses, recursively processing them.
for (Use &U : I->uses()) {
- Instruction *UserI = cast<Instruction>(U.getUser());
+ // Conservatively return true if we're seeing a large number or a deep chain
+ // of users. This avoids excessive compilation times in pathological cases.
+ if (SeenInsts++ >= MaxMemoryUsesToScan)
+ return true;
+ Instruction *UserI = cast<Instruction>(U.getUser());
if (LoadInst *LI = dyn_cast<LoadInst>(UserI)) {
MemoryUses.push_back(std::make_pair(LI, U.getOperandNo()));
continue;
@@ -4082,7 +4090,8 @@ static bool FindAllMemoryUses(
continue;
}
- if (FindAllMemoryUses(UserI, MemoryUses, ConsideredInsts, TLI, TRI))
+ if (FindAllMemoryUses(UserI, MemoryUses, ConsideredInsts, TLI, TRI,
+ SeenInsts))
return true;
}
Modified: projects/runtime-coverage/contrib/llvm/lib/CodeGen/InlineSpiller.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/CodeGen/InlineSpiller.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/CodeGen/InlineSpiller.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -643,8 +643,11 @@ void InlineSpiller::reMaterializeAll() {
Edit->eraseVirtReg(Reg);
continue;
}
- assert((LIS.hasInterval(Reg) && !LIS.getInterval(Reg).empty()) &&
- "Reg with empty interval has reference");
+
+ assert(LIS.hasInterval(Reg) &&
+ (!LIS.getInterval(Reg).empty() || !MRI.reg_nodbg_empty(Reg)) &&
+ "Empty and not used live-range?!");
+
RegsToSpill[ResultPos++] = Reg;
}
RegsToSpill.erase(RegsToSpill.begin() + ResultPos, RegsToSpill.end());
Modified: projects/runtime-coverage/contrib/llvm/lib/CodeGen/RegAllocBase.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/CodeGen/RegAllocBase.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/CodeGen/RegAllocBase.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -133,18 +133,19 @@ void RegAllocBase::allocatePhysRegs() {
if (AvailablePhysReg)
Matrix->assign(*VirtReg, AvailablePhysReg);
- for (VirtRegVec::iterator I = SplitVRegs.begin(), E = SplitVRegs.end();
- I != E; ++I) {
- LiveInterval *SplitVirtReg = &LIS->getInterval(*I);
+ for (unsigned Reg : SplitVRegs) {
+ assert(LIS->hasInterval(Reg));
+
+ LiveInterval *SplitVirtReg = &LIS->getInterval(Reg);
assert(!VRM->hasPhys(SplitVirtReg->reg) && "Register already assigned");
if (MRI->reg_nodbg_empty(SplitVirtReg->reg)) {
+ assert(SplitVirtReg->empty() && "Non-empty but used interval");
DEBUG(dbgs() << "not queueing unused " << *SplitVirtReg << '\n');
aboutToRemoveInterval(*SplitVirtReg);
LIS->removeInterval(SplitVirtReg->reg);
continue;
}
DEBUG(dbgs() << "queuing new interval: " << *SplitVirtReg << "\n");
- assert(!SplitVirtReg->empty() && "expecting non-empty interval");
assert(TargetRegisterInfo::isVirtualRegister(SplitVirtReg->reg) &&
"expect split value in virtual register");
enqueue(SplitVirtReg);
Modified: projects/runtime-coverage/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -2965,7 +2965,12 @@ static inline bool isSETCCorConvertedSETCC(SDValue N)
else if (N.getOpcode() == ISD::SIGN_EXTEND)
N = N.getOperand(0);
- return (N.getOpcode() == ISD::SETCC);
+ if (isLogicalMaskOp(N.getOpcode()))
+ return isSETCCorConvertedSETCC(N.getOperand(0)) &&
+ isSETCCorConvertedSETCC(N.getOperand(1));
+
+ return (N.getOpcode() == ISD::SETCC ||
+ ISD::isBuildVectorOfConstantSDNodes(N.getNode()));
}
#endif
@@ -2973,28 +2978,20 @@ static inline bool isSETCCorConvertedSETCC(SDValue N)
// to ToMaskVT if needed with vector extension or truncation.
SDValue DAGTypeLegalizer::convertMask(SDValue InMask, EVT MaskVT,
EVT ToMaskVT) {
- LLVMContext &Ctx = *DAG.getContext();
-
// Currently a SETCC or a AND/OR/XOR with two SETCCs are handled.
- unsigned InMaskOpc = InMask->getOpcode();
-
// FIXME: This code seems to be too restrictive, we might consider
// generalizing it or dropping it.
- assert((InMaskOpc == ISD::SETCC ||
- ISD::isBuildVectorOfConstantSDNodes(InMask.getNode()) ||
- (isLogicalMaskOp(InMaskOpc) &&
- isSETCCorConvertedSETCC(InMask->getOperand(0)) &&
- isSETCCorConvertedSETCC(InMask->getOperand(1)))) &&
- "Unexpected mask argument.");
+ assert(isSETCCorConvertedSETCC(InMask) && "Unexpected mask argument.");
// Make a new Mask node, with a legal result VT.
SmallVector<SDValue, 4> Ops;
for (unsigned i = 0; i < InMask->getNumOperands(); ++i)
Ops.push_back(InMask->getOperand(i));
- SDValue Mask = DAG.getNode(InMaskOpc, SDLoc(InMask), MaskVT, Ops);
+ SDValue Mask = DAG.getNode(InMask->getOpcode(), SDLoc(InMask), MaskVT, Ops);
// If MaskVT has smaller or bigger elements than ToMaskVT, a vector sign
// extend or truncate is needed.
+ LLVMContext &Ctx = *DAG.getContext();
unsigned MaskScalarBits = MaskVT.getScalarSizeInBits();
unsigned ToMaskScalBits = ToMaskVT.getScalarSizeInBits();
if (MaskScalarBits < ToMaskScalBits) {
Modified: projects/runtime-coverage/contrib/llvm/lib/Option/OptTable.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Option/OptTable.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Option/OptTable.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -235,7 +235,9 @@ OptTable::findByPrefix(StringRef Cur, unsigned short D
continue;
for (int I = 0; In.Prefixes[I]; I++) {
- std::string S = std::string(In.Prefixes[I]) + std::string(In.Name);
+ std::string S = std::string(In.Prefixes[I]) + std::string(In.Name) + "\t";
+ if (In.HelpText)
+ S += In.HelpText;
if (StringRef(S).startswith(Cur))
Ret.push_back(S);
}
Modified: projects/runtime-coverage/contrib/llvm/lib/Support/CommandLine.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Support/CommandLine.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Support/CommandLine.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -2039,9 +2039,9 @@ void CommandLineParser::printOptionValues() {
Opts[i].second->printOptionValue(MaxArgLen, PrintAllOptions);
}
-static VersionPrinterTy OverrideVersionPrinter = nullptr;
+static void (*OverrideVersionPrinter)() = nullptr;
-static std::vector<VersionPrinterTy> *ExtraVersionPrinters = nullptr;
+static std::vector<void (*)()> *ExtraVersionPrinters = nullptr;
namespace {
class VersionPrinter {
@@ -2081,7 +2081,7 @@ class VersionPrinter { (public)
return;
if (OverrideVersionPrinter != nullptr) {
- OverrideVersionPrinter(outs());
+ (*OverrideVersionPrinter)();
exit(0);
}
print();
@@ -2090,8 +2090,10 @@ class VersionPrinter { (public)
// information.
if (ExtraVersionPrinters != nullptr) {
outs() << '\n';
- for (auto I : *ExtraVersionPrinters)
- I(outs());
+ for (std::vector<void (*)()>::iterator I = ExtraVersionPrinters->begin(),
+ E = ExtraVersionPrinters->end();
+ I != E; ++I)
+ (*I)();
}
exit(0);
@@ -2129,11 +2131,11 @@ void cl::PrintHelpMessage(bool Hidden, bool Categorize
/// Utility function for printing version number.
void cl::PrintVersionMessage() { VersionPrinterInstance.print(); }
-void cl::SetVersionPrinter(VersionPrinterTy func) { OverrideVersionPrinter = func; }
+void cl::SetVersionPrinter(void (*func)()) { OverrideVersionPrinter = func; }
-void cl::AddExtraVersionPrinter(VersionPrinterTy func) {
+void cl::AddExtraVersionPrinter(void (*func)()) {
if (!ExtraVersionPrinters)
- ExtraVersionPrinters = new std::vector<VersionPrinterTy>;
+ ExtraVersionPrinters = new std::vector<void (*)()>;
ExtraVersionPrinters->push_back(func);
}
Modified: projects/runtime-coverage/contrib/llvm/lib/Support/ErrorHandling.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Support/ErrorHandling.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Support/ErrorHandling.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -169,7 +169,8 @@ void llvm::report_bad_alloc_error(const char *Reason,
// Don't call the normal error handler. It may allocate memory. Directly write
// an OOM to stderr and abort.
char OOMMessage[] = "LLVM ERROR: out of memory\n";
- (void)::write(2, OOMMessage, strlen(OOMMessage));
+ ssize_t written = ::write(2, OOMMessage, strlen(OOMMessage));
+ (void)written;
abort();
#endif
}
Modified: projects/runtime-coverage/contrib/llvm/lib/Support/TargetRegistry.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Support/TargetRegistry.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Support/TargetRegistry.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -114,7 +114,7 @@ static int TargetArraySortFn(const std::pair<StringRef
return LHS->first.compare(RHS->first);
}
-void TargetRegistry::printRegisteredTargetsForVersion(raw_ostream &OS) {
+void TargetRegistry::printRegisteredTargetsForVersion() {
std::vector<std::pair<StringRef, const Target*> > Targets;
size_t Width = 0;
for (const auto &T : TargetRegistry::targets()) {
@@ -123,6 +123,7 @@ void TargetRegistry::printRegisteredTargetsForVersion(
}
array_pod_sort(Targets.begin(), Targets.end(), TargetArraySortFn);
+ raw_ostream &OS = outs();
OS << " Registered Targets:\n";
for (unsigned i = 0, e = Targets.size(); i != e; ++i) {
OS << " " << Targets[i].first;
Modified: projects/runtime-coverage/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -2889,9 +2889,12 @@ void AArch64TargetLowering::saveVarArgRegisters(CCStat
unsigned GPRSaveSize = 8 * (NumGPRArgRegs - FirstVariadicGPR);
int GPRIdx = 0;
if (GPRSaveSize != 0) {
- if (IsWin64)
+ if (IsWin64) {
GPRIdx = MFI.CreateFixedObject(GPRSaveSize, -(int)GPRSaveSize, false);
- else
+ if (GPRSaveSize & 15)
+ // The extra size here, if triggered, will always be 8.
+ MFI.CreateFixedObject(16 - (GPRSaveSize & 15), -(int)alignTo(GPRSaveSize, 16), false);
+ } else
GPRIdx = MFI.CreateStackObject(GPRSaveSize, 8, false);
SDValue FIN = DAG.getFrameIndex(GPRIdx, PtrVT);
Modified: projects/runtime-coverage/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -297,6 +297,11 @@ void AMDGPUInstPrinter::printRegOperand(unsigned RegNo
case AMDGPU::FLAT_SCR_HI:
O << "flat_scratch_hi";
return;
+ case AMDGPU::FP_REG:
+ case AMDGPU::SP_REG:
+ case AMDGPU::SCRATCH_WAVE_OFFSET_REG:
+ case AMDGPU::PRIVATE_RSRC_REG:
+ llvm_unreachable("pseudo-register should not ever be emitted");
default:
break;
}
Modified: projects/runtime-coverage/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.td
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.td Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.td Mon Jul 31 04:20:21 2017 (r321756)
@@ -274,8 +274,7 @@ def VGPR_512 : RegisterTuples<[sub0, sub1, sub2, sub3,
def SReg_32_XM0_XEXEC : RegisterClass<"AMDGPU", [i32, f32, i16, f16, v2i16, v2f16], 32,
(add SGPR_32, VCC_LO, VCC_HI, FLAT_SCR_LO, FLAT_SCR_HI,
TTMP_32, TMA_LO, TMA_HI, TBA_LO, TBA_HI, SRC_SHARED_BASE, SRC_SHARED_LIMIT,
- SRC_PRIVATE_BASE, SRC_PRIVATE_LIMIT,
- FP_REG, SP_REG, SCRATCH_WAVE_OFFSET_REG)> {
+ SRC_PRIVATE_BASE, SRC_PRIVATE_LIMIT)> {
let AllocationPriority = 7;
}
Modified: projects/runtime-coverage/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -61,14 +61,6 @@ static unsigned adjustFixupValue(unsigned Kind, uint64
case Sparc::fixup_sparc_lo10:
return Value & 0x3ff;
- case Sparc::fixup_sparc_tls_ldo_hix22:
- case Sparc::fixup_sparc_tls_le_hix22:
- return (~Value >> 10) & 0x3fffff;
-
- case Sparc::fixup_sparc_tls_ldo_lox10:
- case Sparc::fixup_sparc_tls_le_lox10:
- return (~(~Value & 0x3ff)) & 0x1fff;
-
case Sparc::fixup_sparc_h44:
return (Value >> 22) & 0x3fffff;
@@ -83,6 +75,13 @@ static unsigned adjustFixupValue(unsigned Kind, uint64
case Sparc::fixup_sparc_hm:
return (Value >> 32) & 0x3ff;
+
+ case Sparc::fixup_sparc_tls_ldo_hix22:
+ case Sparc::fixup_sparc_tls_le_hix22:
+ case Sparc::fixup_sparc_tls_ldo_lox10:
+ case Sparc::fixup_sparc_tls_le_lox10:
+ assert(Value == 0 && "Sparc TLS relocs expect zero Value");
+ return 0;
case Sparc::fixup_sparc_tls_gd_add:
case Sparc::fixup_sparc_tls_gd_call:
Modified: projects/runtime-coverage/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ14.td
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ14.td Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Target/SystemZ/SystemZScheduleZ14.td Mon Jul 31 04:20:21 2017 (r321756)
@@ -455,10 +455,10 @@ def : InstRW<[FXa, LSU, Lat8], (instregex "MH(Y)?$")>;
def : InstRW<[FXa2, Lat6, GroupAlone], (instregex "M(L)?R$")>;
def : InstRW<[FXa2, LSU, Lat10, GroupAlone], (instregex "M(FY|L)?$")>;
def : InstRW<[FXa, LSU, Lat8], (instregex "MGH$")>;
-def : InstRW<[FXa, LSU, Lat12, GroupAlone], (instregex "MG$")>;
-def : InstRW<[FXa, Lat8, GroupAlone], (instregex "MGRK$")>;
-def : InstRW<[FXa, LSU, Lat9, GroupAlone], (instregex "MSC$")>;
-def : InstRW<[FXa, LSU, Lat11, GroupAlone], (instregex "MSGC$")>;
+def : InstRW<[FXa, FXa, LSU, Lat12, GroupAlone], (instregex "MG$")>;
+def : InstRW<[FXa, FXa, Lat8, GroupAlone], (instregex "MGRK$")>;
+def : InstRW<[FXa, LSU, Lat9], (instregex "MSC$")>;
+def : InstRW<[FXa, LSU, Lat11], (instregex "MSGC$")>;
def : InstRW<[FXa, Lat5], (instregex "MSRKC$")>;
def : InstRW<[FXa, Lat7], (instregex "MSGRKC$")>;
@@ -620,7 +620,7 @@ def : InstRW<[FXa, Lat30], (instregex "(PCC|PPNO|PRNO)
def : InstRW<[LSU], (instregex "LGG$")>;
def : InstRW<[LSU, Lat5], (instregex "LLGFSG$")>;
-def : InstRW<[LSU, Lat30, GroupAlone], (instregex "(L|ST)GSC$")>;
+def : InstRW<[LSU, Lat30], (instregex "(L|ST)GSC$")>;
//===----------------------------------------------------------------------===//
// Decimal arithmetic
@@ -708,7 +708,7 @@ def : InstRW<[FXb, LSU, Lat5], (instregex "NTSTG$")>;
// Processor assist
//===----------------------------------------------------------------------===//
-def : InstRW<[FXb], (instregex "PPA$")>;
+def : InstRW<[FXb, GroupAlone], (instregex "PPA$")>;
//===----------------------------------------------------------------------===//
// Miscellaneous Instructions.
@@ -1276,9 +1276,9 @@ def : InstRW<[VecXsPm], (instregex "VESRL(B|F|G|H)?$")
def : InstRW<[VecXsPm], (instregex "VESRLV(B|F|G|H)?$")>;
def : InstRW<[VecXsPm], (instregex "VSL(DB)?$")>;
-def : InstRW<[VecXsPm, VecXsPm, Lat8], (instregex "VSLB$")>;
+def : InstRW<[VecXsPm], (instregex "VSLB$")>;
def : InstRW<[VecXsPm], (instregex "VSR(A|L)$")>;
-def : InstRW<[VecXsPm, VecXsPm, Lat8], (instregex "VSR(A|L)B$")>;
+def : InstRW<[VecXsPm], (instregex "VSR(A|L)B$")>;
def : InstRW<[VecXsPm], (instregex "VSB(I|IQ|CBI|CBIQ)?$")>;
def : InstRW<[VecXsPm], (instregex "VSCBI(B|F|G|H|Q)?$")>;
@@ -1435,9 +1435,9 @@ def : InstRW<[VecStr, Lat5], (instregex "VSTRCZ(B|F|H)
// Vector: Packed-decimal instructions
//===----------------------------------------------------------------------===//
-def : InstRW<[VecDF, VecDF, Lat10, GroupAlone], (instregex "VLIP$")>;
-def : InstRW<[VecDFX, LSU, Lat12, GroupAlone], (instregex "VPKZ$")>;
-def : InstRW<[VecDFX, FXb, LSU, Lat12, GroupAlone], (instregex "VUPKZ$")>;
+def : InstRW<[VecDF, VecDF, Lat10], (instregex "VLIP$")>;
+def : InstRW<[VecDFX, LSU, GroupAlone], (instregex "VPKZ$")>;
+def : InstRW<[VecDFX, FXb, LSU, Lat12, BeginGroup], (instregex "VUPKZ$")>;
def : InstRW<[VecDF, VecDF, FXb, Lat20, GroupAlone], (instregex "VCVB(G)?$")>;
def : InstRW<[VecDF, VecDF, FXb, Lat20, GroupAlone], (instregex "VCVD(G)?$")>;
def : InstRW<[VecDFX], (instregex "V(A|S)P$")>;
Modified: projects/runtime-coverage/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -1055,7 +1055,10 @@ static bool foldMaskAndShiftToScale(SelectionDAG &DAG,
// Scale the leading zero count down based on the actual size of the value.
// Also scale it down based on the size of the shift.
- MaskLZ -= (64 - X.getSimpleValueType().getSizeInBits()) + ShiftAmt;
+ unsigned ScaleDown = (64 - X.getSimpleValueType().getSizeInBits()) + ShiftAmt;
+ if (MaskLZ < ScaleDown)
+ return true;
+ MaskLZ -= ScaleDown;
// The final check is to ensure that any masked out high bits of X are
// already known to be zero. Otherwise, the mask has a semantic impact
Modified: projects/runtime-coverage/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -1672,8 +1672,8 @@ X86TargetLowering::X86TargetLowering(const X86TargetMa
// TODO: These control memcmp expansion in CGP and could be raised higher, but
// that needs to benchmarked and balanced with the potential use of vector
- // load/store types (PR33329).
- MaxLoadsPerMemcmp = 4;
+ // load/store types (PR33329, PR33914).
+ MaxLoadsPerMemcmp = 2;
MaxLoadsPerMemcmpOptSize = 2;
// Set loop alignment to 2^ExperimentalPrefLoopAlignment bytes (default: 2^4).
@@ -22022,8 +22022,9 @@ static SDValue LowerScalarImmediateShift(SDValue Op, S
return getTargetVShiftByConstNode(X86Opc, dl, VT, R, ShiftAmt, DAG);
// i64 SRA needs to be performed as partial shifts.
- if ((VT == MVT::v2i64 || (Subtarget.hasInt256() && VT == MVT::v4i64)) &&
- Op.getOpcode() == ISD::SRA && !Subtarget.hasXOP())
+ if (((!Subtarget.hasXOP() && VT == MVT::v2i64) ||
+ (Subtarget.hasInt256() && VT == MVT::v4i64)) &&
+ Op.getOpcode() == ISD::SRA)
return ArithmeticShiftRight64(ShiftAmt);
if (VT == MVT::v16i8 ||
Modified: projects/runtime-coverage/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -64,6 +64,11 @@ ImplicationSearchThreshold(
"condition to use to thread over a weaker condition"),
cl::init(3), cl::Hidden);
+static cl::opt<bool> PrintLVIAfterJumpThreading(
+ "print-lvi-after-jump-threading",
+ cl::desc("Print the LazyValueInfo cache after JumpThreading"), cl::init(false),
+ cl::Hidden);
+
namespace {
/// This pass performs 'jump threading', which looks at blocks that have
/// multiple predecessors and multiple successors. If one or more of the
@@ -93,9 +98,10 @@ namespace {
bool runOnFunction(Function &F) override;
void getAnalysisUsage(AnalysisUsage &AU) const override {
+ if (PrintLVIAfterJumpThreading)
+ AU.addRequired<DominatorTreeWrapperPass>();
AU.addRequired<AAResultsWrapperPass>();
AU.addRequired<LazyValueInfoWrapperPass>();
- AU.addPreserved<LazyValueInfoWrapperPass>();
AU.addPreserved<GlobalsAAWrapperPass>();
AU.addRequired<TargetLibraryInfoWrapperPass>();
}
@@ -137,8 +143,14 @@ bool JumpThreading::runOnFunction(Function &F) {
BFI.reset(new BlockFrequencyInfo(F, *BPI, LI));
}
- return Impl.runImpl(F, TLI, LVI, AA, HasProfileData, std::move(BFI),
- std::move(BPI));
+ bool Changed = Impl.runImpl(F, TLI, LVI, AA, HasProfileData, std::move(BFI),
+ std::move(BPI));
+ if (PrintLVIAfterJumpThreading) {
+ dbgs() << "LVI for function '" << F.getName() << "':\n";
+ LVI->printLVI(F, getAnalysis<DominatorTreeWrapperPass>().getDomTree(),
+ dbgs());
+ }
+ return Changed;
}
PreservedAnalyses JumpThreadingPass::run(Function &F,
@@ -231,13 +243,15 @@ bool JumpThreadingPass::runImpl(Function &F, TargetLib
// Can't thread an unconditional jump, but if the block is "almost
// empty", we can replace uses of it with uses of the successor and make
// this dead.
- // We should not eliminate the loop header either, because eliminating
- // a loop header might later prevent LoopSimplify from transforming nested
- // loops into simplified form.
+ // We should not eliminate the loop header or latch either, because
+ // eliminating a loop header or latch might later prevent LoopSimplify
+ // from transforming nested loops into simplified form. We will rely on
+ // later passes in backend to clean up empty blocks.
if (BI && BI->isUnconditional() &&
BB != &BB->getParent()->getEntryBlock() &&
// If the terminator is the only non-phi instruction, try to nuke it.
- BB->getFirstNonPHIOrDbg()->isTerminator() && !LoopHeaders.count(BB)) {
+ BB->getFirstNonPHIOrDbg()->isTerminator() && !LoopHeaders.count(BB) &&
+ !LoopHeaders.count(BI->getSuccessor(0))) {
// FIXME: It is always conservatively correct to drop the info
// for a block even if it doesn't get erased. This isn't totally
// awesome, but it allows us to use AssertingVH to prevent nasty
Modified: projects/runtime-coverage/contrib/llvm/lib/Transforms/Utils/LoopUtils.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Transforms/Utils/LoopUtils.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Transforms/Utils/LoopUtils.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -1376,16 +1376,21 @@ Value *llvm::createTargetReduction(IRBuilder<> &Builde
}
}
-void llvm::propagateIRFlags(Value *I, ArrayRef<Value *> VL) {
- if (auto *VecOp = dyn_cast<Instruction>(I)) {
- if (auto *I0 = dyn_cast<Instruction>(VL[0])) {
- // VecOVp is initialized to the 0th scalar, so start counting from index
- // '1'.
- VecOp->copyIRFlags(I0);
- for (int i = 1, e = VL.size(); i < e; ++i) {
- if (auto *Scalar = dyn_cast<Instruction>(VL[i]))
- VecOp->andIRFlags(Scalar);
- }
- }
+void llvm::propagateIRFlags(Value *I, ArrayRef<Value *> VL, Value *OpValue) {
+ auto *VecOp = dyn_cast<Instruction>(I);
+ if (!VecOp)
+ return;
+ auto *Intersection = (OpValue == nullptr) ? dyn_cast<Instruction>(VL[0])
+ : dyn_cast<Instruction>(OpValue);
+ if (!Intersection)
+ return;
+ const unsigned Opcode = Intersection->getOpcode();
+ VecOp->copyIRFlags(Intersection);
+ for (auto *V : VL) {
+ auto *Instr = dyn_cast<Instruction>(V);
+ if (!Instr)
+ continue;
+ if (OpValue == nullptr || Opcode == Instr->getOpcode())
+ VecOp->andIRFlags(V);
}
}
Modified: projects/runtime-coverage/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -5656,20 +5656,22 @@ static bool TryToMergeLandingPad(LandingPadInst *LPad,
bool SimplifyCFGOpt::SimplifyUncondBranch(BranchInst *BI,
IRBuilder<> &Builder) {
BasicBlock *BB = BI->getParent();
+ BasicBlock *Succ = BI->getSuccessor(0);
if (SinkCommon && SinkThenElseCodeToEnd(BI))
return true;
// If the Terminator is the only non-phi instruction, simplify the block.
- // if LoopHeader is provided, check if the block is a loop header
- // (This is for early invocations before loop simplify and vectorization
- // to keep canonical loop forms for nested loops.
- // These blocks can be eliminated when the pass is invoked later
- // in the back-end.)
+ // if LoopHeader is provided, check if the block or its successor is a loop
+ // header (This is for early invocations before loop simplify and
+ // vectorization to keep canonical loop forms for nested loops. These blocks
+ // can be eliminated when the pass is invoked later in the back-end.)
+ bool NeedCanonicalLoop =
+ !LateSimplifyCFG &&
+ (LoopHeaders && (LoopHeaders->count(BB) || LoopHeaders->count(Succ)));
BasicBlock::iterator I = BB->getFirstNonPHIOrDbg()->getIterator();
if (I->isTerminator() && BB != &BB->getParent()->getEntryBlock() &&
- (!LoopHeaders || !LoopHeaders->count(BB)) &&
- TryToSimplifyUncondBranchFromEmptyBlock(BB))
+ !NeedCanonicalLoop && TryToSimplifyUncondBranchFromEmptyBlock(BB))
return true;
// If the only instruction in the block is a seteq/setne comparison
Modified: projects/runtime-coverage/contrib/llvm/tools/clang/include/clang/AST/Type.h
==============================================================================
--- projects/runtime-coverage/contrib/llvm/tools/clang/include/clang/AST/Type.h Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/tools/clang/include/clang/AST/Type.h Mon Jul 31 04:20:21 2017 (r321756)
@@ -1752,6 +1752,7 @@ class Type : public ExtQualsTypeCommonBase { (public)
bool isTemplateTypeParmType() const; // C++ template type parameter
bool isNullPtrType() const; // C++11 std::nullptr_t
bool isAlignValT() const; // C++17 std::align_val_t
+ bool isStdByteType() const; // C++17 std::byte
bool isAtomicType() const; // C11 _Atomic()
#define IMAGE_TYPE(ImgType, Id, SingletonId, Access, Suffix) \
Modified: projects/runtime-coverage/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -1388,6 +1388,15 @@ static Stmt::StmtClass DecodeOperatorCall(const CXXOpe
llvm_unreachable("Invalid overloaded operator expression");
}
+#if defined(_MSC_VER)
+#if _MSC_VER == 1911
+// Work around https://developercommunity.visualstudio.com/content/problem/84002/clang-cl-when-built-with-vc-2017-crashes-cause-vc.html
+// MSVC 2017 update 3 miscompiles this function, and a clang built with it
+// will crash in stage 2 of a bootstrap build.
+#pragma optimize("", off)
+#endif
+#endif
+
void StmtProfiler::VisitCXXOperatorCallExpr(const CXXOperatorCallExpr *S) {
if (S->isTypeDependent()) {
// Type-dependent operator calls are profiled like their underlying
@@ -1419,6 +1428,12 @@ void StmtProfiler::VisitCXXOperatorCallExpr(const CXXO
VisitCallExpr(S);
ID.AddInteger(S->getOperator());
}
+
+#if defined(_MSC_VER)
+#if _MSC_VER == 1911
+#pragma optimize("", on)
+#endif
+#endif
void StmtProfiler::VisitCXXMemberCallExpr(const CXXMemberCallExpr *S) {
VisitCallExpr(S);
Modified: projects/runtime-coverage/contrib/llvm/tools/clang/lib/AST/Type.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/tools/clang/lib/AST/Type.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/tools/clang/lib/AST/Type.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -2313,6 +2313,15 @@ bool Type::isAlignValT() const {
return false;
}
+bool Type::isStdByteType() const {
+ if (auto *ET = getAs<EnumType>()) {
+ auto *II = ET->getDecl()->getIdentifier();
+ if (II && II->isStr("byte") && ET->getDecl()->isInStdNamespace())
+ return true;
+ }
+ return false;
+}
+
bool Type::isPromotableIntegerType() const {
if (const BuiltinType *BT = getAs<BuiltinType>())
switch (BT->getKind()) {
Modified: projects/runtime-coverage/contrib/llvm/tools/clang/lib/Basic/DiagnosticIDs.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/tools/clang/lib/Basic/DiagnosticIDs.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/tools/clang/lib/Basic/DiagnosticIDs.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -516,7 +516,7 @@ std::vector<std::string> DiagnosticIDs::getDiagnosticF
std::string Diag(DiagGroupNames + I + 1, DiagGroupNames[I]);
I += DiagGroupNames[I] + 1;
Res.push_back("-W" + Diag);
- Res.push_back("-Wno" + Diag);
+ Res.push_back("-Wno-" + Diag);
}
return Res;
Modified: projects/runtime-coverage/contrib/llvm/tools/clang/lib/Basic/Version.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/tools/clang/lib/Basic/Version.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/tools/clang/lib/Basic/Version.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -36,7 +36,7 @@ std::string getClangRepositoryPath() {
// If the SVN_REPOSITORY is empty, try to use the SVN keyword. This helps us
// pick up a tag in an SVN export, for example.
- StringRef SVNRepository("$URL: https://llvm.org/svn/llvm-project/cfe/trunk/lib/Basic/Version.cpp $");
+ StringRef SVNRepository("$URL: https://llvm.org/svn/llvm-project/cfe/branches/release_50/lib/Basic/Version.cpp $");
if (URL.empty()) {
URL = SVNRepository.slice(SVNRepository.find(':'),
SVNRepository.find("/lib/Basic"));
Modified: projects/runtime-coverage/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -139,6 +139,12 @@ CodeGenTBAA::getTBAAInfo(QualType QTy) {
}
}
+ // C++1z [basic.lval]p10: "If a program attempts to access the stored value of
+ // an object through a glvalue of other than one of the following types the
+ // behavior is undefined: [...] a char, unsigned char, or std::byte type."
+ if (Ty->isStdByteType())
+ return MetadataCache[Ty] = getChar();
+
// Handle pointers.
// TODO: Implement C++'s type "similarity" and consider dis-"similar"
// pointers distinct.
Modified: projects/runtime-coverage/contrib/llvm/tools/clang/lib/Driver/Driver.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/tools/clang/lib/Driver/Driver.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/tools/clang/lib/Driver/Driver.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -69,7 +69,6 @@
#include "llvm/Support/PrettyStackTrace.h"
#include "llvm/Support/Process.h"
#include "llvm/Support/Program.h"
-#include "llvm/Support/TargetRegistry.h"
#include "llvm/Support/raw_ostream.h"
#include <map>
#include <memory>
@@ -1193,10 +1192,6 @@ bool Driver::HandleImmediateArgs(const Compilation &C)
if (C.getArgs().hasArg(options::OPT__version)) {
// Follow gcc behavior and use stdout for --version and stderr for -v.
PrintVersion(C, llvm::outs());
-
- // Print registered targets.
- llvm::outs() << '\n';
- llvm::TargetRegistry::printRegisteredTargetsForVersion(llvm::outs());
return false;
}
@@ -1299,7 +1294,7 @@ bool Driver::HandleImmediateArgs(const Compilation &C)
std::sort(SuggestedCompletions.begin(), SuggestedCompletions.end(),
[](StringRef A, StringRef B) { return A.compare_lower(B) < 0; });
- llvm::outs() << llvm::join(SuggestedCompletions, " ") << '\n';
+ llvm::outs() << llvm::join(SuggestedCompletions, "\n") << '\n';
return false;
}
Modified: projects/runtime-coverage/contrib/llvm/tools/clang/lib/Headers/unwind.h
==============================================================================
--- projects/runtime-coverage/contrib/llvm/tools/clang/lib/Headers/unwind.h Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/tools/clang/lib/Headers/unwind.h Mon Jul 31 04:20:21 2017 (r321756)
@@ -76,7 +76,13 @@ typedef intptr_t _sleb128_t;
typedef uintptr_t _uleb128_t;
struct _Unwind_Context;
+#if defined(__arm__) && !(defined(__USING_SJLJ_EXCEPTIONS__) || defined(__ARM_DWARF_EH___))
+struct _Unwind_Control_Block;
+typedef struct _Unwind_Control_Block _Unwind_Exception; /* Alias */
+#else
struct _Unwind_Exception;
+typedef struct _Unwind_Exception _Unwind_Exception;
+#endif
typedef enum {
_URC_NO_REASON = 0,
#if defined(__arm__) && !defined(__USING_SJLJ_EXCEPTIONS__) && \
@@ -109,8 +115,42 @@ typedef enum {
} _Unwind_Action;
typedef void (*_Unwind_Exception_Cleanup_Fn)(_Unwind_Reason_Code,
- struct _Unwind_Exception *);
+ _Unwind_Exception *);
+#if defined(__arm__) && !(defined(__USING_SJLJ_EXCEPTIONS__) || defined(__ARM_DWARF_EH___))
+typedef struct _Unwind_Control_Block _Unwind_Control_Block;
+typedef uint32_t _Unwind_EHT_Header;
+
+struct _Unwind_Control_Block {
+ uint64_t exception_class;
+ void (*exception_cleanup)(_Unwind_Reason_Code, _Unwind_Control_Block *);
+ /* unwinder cache (private fields for the unwinder's use) */
+ struct {
+ uint32_t reserved1; /* forced unwind stop function, 0 if not forced */
+ uint32_t reserved2; /* personality routine */
+ uint32_t reserved3; /* callsite */
+ uint32_t reserved4; /* forced unwind stop argument */
+ uint32_t reserved5;
+ } unwinder_cache;
+ /* propagation barrier cache (valid after phase 1) */
+ struct {
+ uint32_t sp;
+ uint32_t bitpattern[5];
+ } barrier_cache;
+ /* cleanup cache (preserved over cleanup) */
+ struct {
+ uint32_t bitpattern[4];
+ } cleanup_cache;
+ /* personality cache (for personality's benefit) */
+ struct {
+ uint32_t fnstart; /* function start address */
+ _Unwind_EHT_Header *ehtp; /* pointer to EHT entry header word */
+ uint32_t additional; /* additional data */
+ uint32_t reserved1;
+ } pr_cache;
+ long long int : 0; /* force alignment of next item to 8-byte boundary */
+};
+#else
struct _Unwind_Exception {
_Unwind_Exception_Class exception_class;
_Unwind_Exception_Cleanup_Fn exception_cleanup;
@@ -120,23 +160,24 @@ struct _Unwind_Exception {
* aligned". GCC has interpreted this to mean "use the maximum useful
* alignment for the target"; so do we. */
} __attribute__((__aligned__));
+#endif
typedef _Unwind_Reason_Code (*_Unwind_Stop_Fn)(int, _Unwind_Action,
_Unwind_Exception_Class,
- struct _Unwind_Exception *,
+ _Unwind_Exception *,
struct _Unwind_Context *,
void *);
-typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(
- int, _Unwind_Action, _Unwind_Exception_Class, struct _Unwind_Exception *,
- struct _Unwind_Context *);
+typedef _Unwind_Reason_Code (*_Unwind_Personality_Fn)(int, _Unwind_Action,
+ _Unwind_Exception_Class,
+ _Unwind_Exception *,
+ struct _Unwind_Context *);
typedef _Unwind_Personality_Fn __personality_routine;
typedef _Unwind_Reason_Code (*_Unwind_Trace_Fn)(struct _Unwind_Context *,
void *);
-#if defined(__arm__) && !defined(__APPLE__)
-
+#if defined(__arm__) && !(defined(__USING_SJLJ_EXCEPTIONS__) || defined(__ARM_DWARF_EH___))
typedef enum {
_UVRSC_CORE = 0, /* integer register */
_UVRSC_VFP = 1, /* vfp */
@@ -158,14 +199,12 @@ typedef enum {
_UVRSR_FAILED = 2
} _Unwind_VRS_Result;
-#if !defined(__USING_SJLJ_EXCEPTIONS__) && !defined(__ARM_DWARF_EH__)
typedef uint32_t _Unwind_State;
#define _US_VIRTUAL_UNWIND_FRAME ((_Unwind_State)0)
#define _US_UNWIND_FRAME_STARTING ((_Unwind_State)1)
#define _US_UNWIND_FRAME_RESUME ((_Unwind_State)2)
#define _US_ACTION_MASK ((_Unwind_State)3)
#define _US_FORCE_UNWIND ((_Unwind_State)8)
-#endif
_Unwind_VRS_Result _Unwind_VRS_Get(struct _Unwind_Context *__context,
_Unwind_VRS_RegClass __regclass,
@@ -224,14 +263,13 @@ _Unwind_Ptr _Unwind_GetRegionStart(struct _Unwind_Cont
/* DWARF EH functions; currently not available on Darwin/ARM */
#if !defined(__APPLE__) || !defined(__arm__)
+_Unwind_Reason_Code _Unwind_RaiseException(_Unwind_Exception *);
+_Unwind_Reason_Code _Unwind_ForcedUnwind(_Unwind_Exception *, _Unwind_Stop_Fn,
+ void *);
+void _Unwind_DeleteException(_Unwind_Exception *);
+void _Unwind_Resume(_Unwind_Exception *);
+_Unwind_Reason_Code _Unwind_Resume_or_Rethrow(_Unwind_Exception *);
-_Unwind_Reason_Code _Unwind_RaiseException(struct _Unwind_Exception *);
-_Unwind_Reason_Code _Unwind_ForcedUnwind(struct _Unwind_Exception *,
- _Unwind_Stop_Fn, void *);
-void _Unwind_DeleteException(struct _Unwind_Exception *);
-void _Unwind_Resume(struct _Unwind_Exception *);
-_Unwind_Reason_Code _Unwind_Resume_or_Rethrow(struct _Unwind_Exception *);
-
#endif
_Unwind_Reason_Code _Unwind_Backtrace(_Unwind_Trace_Fn, void *);
@@ -241,11 +279,11 @@ typedef struct SjLj_Function_Context *_Unwind_Function
void _Unwind_SjLj_Register(_Unwind_FunctionContext_t);
void _Unwind_SjLj_Unregister(_Unwind_FunctionContext_t);
-_Unwind_Reason_Code _Unwind_SjLj_RaiseException(struct _Unwind_Exception *);
-_Unwind_Reason_Code _Unwind_SjLj_ForcedUnwind(struct _Unwind_Exception *,
+_Unwind_Reason_Code _Unwind_SjLj_RaiseException(_Unwind_Exception *);
+_Unwind_Reason_Code _Unwind_SjLj_ForcedUnwind(_Unwind_Exception *,
_Unwind_Stop_Fn, void *);
-void _Unwind_SjLj_Resume(struct _Unwind_Exception *);
-_Unwind_Reason_Code _Unwind_SjLj_Resume_or_Rethrow(struct _Unwind_Exception *);
+void _Unwind_SjLj_Resume(_Unwind_Exception *);
+_Unwind_Reason_Code _Unwind_SjLj_Resume_or_Rethrow(_Unwind_Exception *);
void *_Unwind_FindEnclosingFunction(void *);
Modified: projects/runtime-coverage/contrib/llvm/tools/clang/lib/Lex/ScratchBuffer.cpp
==============================================================================
--- projects/runtime-coverage/contrib/llvm/tools/clang/lib/Lex/ScratchBuffer.cpp Mon Jul 31 03:59:07 2017 (r321755)
+++ projects/runtime-coverage/contrib/llvm/tools/clang/lib/Lex/ScratchBuffer.cpp Mon Jul 31 04:20:21 2017 (r321756)
@@ -35,6 +35,14 @@ SourceLocation ScratchBuffer::getToken(const char *Buf
const char *&DestPtr) {
if (BytesUsed+Len+2 > ScratchBufSize)
AllocScratchBuffer(Len+2);
+ else {
+ // Clear out the source line cache if it's already been computed.
+ // FIXME: Allow this to be incrementally extended.
+ auto *ContentCache = const_cast<SrcMgr::ContentCache *>(
+ SourceMgr.getSLocEntry(SourceMgr.getFileID(BufferStartLoc))
+ .getFile().getContentCache());
+ ContentCache->SourceLineCache = nullptr;
+ }
// Prefix the token with a \n, so that it looks like it is the first thing on
// its own virtual line in caret diagnostics.
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-projects
mailing list