From owner-svn-src-projects@freebsd.org Mon May 22 19:06:41 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 5E2A2D79A1A for ; Mon, 22 May 2017 19:06:41 +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 364DA1814; Mon, 22 May 2017 19:06:41 +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 v4MJ6ewm059527; Mon, 22 May 2017 19:06:40 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v4MJ6eAI059525; Mon, 22 May 2017 19:06:40 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201705221906.v4MJ6eAI059525@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Mon, 22 May 2017 19:06:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r318656 - in projects/clang500-import/lib/clang: . libllvm 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: Mon, 22 May 2017 19:06:41 -0000 Author: dim Date: Mon May 22 19:06:39 2017 New Revision: 318656 URL: https://svnweb.freebsd.org/changeset/base/318656 Log: Following upstream trunk, enable the new global instruction selection (GlobalISel), cleanup some defines, and adjust the libllvm Makefile for this. Modified: projects/clang500-import/lib/clang/libllvm/Makefile projects/clang500-import/lib/clang/llvm.build.mk Modified: projects/clang500-import/lib/clang/libllvm/Makefile ============================================================================== --- projects/clang500-import/lib/clang/libllvm/Makefile Mon May 22 16:16:48 2017 (r318655) +++ projects/clang500-import/lib/clang/libllvm/Makefile Mon May 22 19:06:39 2017 (r318656) @@ -163,7 +163,19 @@ SRCS_MIN+= CodeGen/GCMetadata.cpp SRCS_MIN+= CodeGen/GCMetadataPrinter.cpp SRCS_MIN+= CodeGen/GCRootLowering.cpp SRCS_MIN+= CodeGen/GCStrategy.cpp +SRCS_MIN+= CodeGen/GlobalISel/CallLowering.cpp SRCS_MIN+= CodeGen/GlobalISel/GlobalISel.cpp +SRCS_MIN+= CodeGen/GlobalISel/IRTranslator.cpp +SRCS_MIN+= CodeGen/GlobalISel/InstructionSelect.cpp +SRCS_MIN+= CodeGen/GlobalISel/InstructionSelector.cpp +SRCS_MIN+= CodeGen/GlobalISel/Legalizer.cpp +SRCS_MIN+= CodeGen/GlobalISel/LegalizerHelper.cpp +SRCS_MIN+= CodeGen/GlobalISel/LegalizerInfo.cpp +SRCS_MIN+= CodeGen/GlobalISel/MachineIRBuilder.cpp +SRCS_MIN+= CodeGen/GlobalISel/RegBankSelect.cpp +SRCS_MIN+= CodeGen/GlobalISel/RegisterBank.cpp +SRCS_MIN+= CodeGen/GlobalISel/RegisterBankInfo.cpp +SRCS_MIN+= CodeGen/GlobalISel/Utils.cpp SRCS_MIN+= CodeGen/GlobalMerge.cpp SRCS_MIN+= CodeGen/IfConversion.cpp SRCS_MIN+= CodeGen/ImplicitNullChecks.cpp @@ -386,10 +398,10 @@ SRCS_EXT+= DebugInfo/PDB/Native/NativeRa SRCS_EXT+= DebugInfo/PDB/Native/NativeSession.cpp SRCS_EXT+= DebugInfo/PDB/Native/PDBFile.cpp SRCS_EXT+= DebugInfo/PDB/Native/PDBFileBuilder.cpp -SRCS_EXT+= DebugInfo/PDB/Native/PublicsStream.cpp -SRCS_EXT+= DebugInfo/PDB/Native/RawError.cpp SRCS_EXT+= DebugInfo/PDB/Native/PDBStringTable.cpp SRCS_EXT+= DebugInfo/PDB/Native/PDBStringTableBuilder.cpp +SRCS_EXT+= DebugInfo/PDB/Native/PublicsStream.cpp +SRCS_EXT+= DebugInfo/PDB/Native/RawError.cpp SRCS_EXT+= DebugInfo/PDB/Native/SymbolStream.cpp SRCS_EXT+= DebugInfo/PDB/Native/TpiHashing.cpp SRCS_EXT+= DebugInfo/PDB/Native/TpiStream.cpp @@ -737,6 +749,7 @@ SRCS_MIN+= Target/AArch64/AArch64A53Fix8 SRCS_MIN+= Target/AArch64/AArch64A57FPLoadBalancing.cpp SRCS_MIN+= Target/AArch64/AArch64AdvSIMDScalarPass.cpp SRCS_MIN+= Target/AArch64/AArch64AsmPrinter.cpp +SRCS_MIN+= Target/AArch64/AArch64CallLowering.cpp SRCS_MIN+= Target/AArch64/AArch64CleanupLocalDynamicTLSPass.cpp SRCS_MIN+= Target/AArch64/AArch64CollectLOH.cpp SRCS_MIN+= Target/AArch64/AArch64ConditionOptimizer.cpp @@ -748,12 +761,15 @@ SRCS_MIN+= Target/AArch64/AArch64FrameLo SRCS_MIN+= Target/AArch64/AArch64ISelDAGToDAG.cpp SRCS_MIN+= Target/AArch64/AArch64ISelLowering.cpp SRCS_MIN+= Target/AArch64/AArch64InstrInfo.cpp +SRCS_MIN+= Target/AArch64/AArch64InstructionSelector.cpp +SRCS_MIN+= Target/AArch64/AArch64LegalizerInfo.cpp SRCS_MIN+= Target/AArch64/AArch64LoadStoreOptimizer.cpp SRCS_MIN+= Target/AArch64/AArch64MCInstLower.cpp SRCS_MIN+= Target/AArch64/AArch64MacroFusion.cpp SRCS_MIN+= Target/AArch64/AArch64PBQPRegAlloc.cpp SRCS_MIN+= Target/AArch64/AArch64PromoteConstant.cpp SRCS_MIN+= Target/AArch64/AArch64RedundantCopyElimination.cpp +SRCS_MIN+= Target/AArch64/AArch64RegisterBankInfo.cpp SRCS_MIN+= Target/AArch64/AArch64RegisterInfo.cpp SRCS_MIN+= Target/AArch64/AArch64SelectionDAGInfo.cpp SRCS_MIN+= Target/AArch64/AArch64StorePairSuppress.cpp @@ -781,6 +797,7 @@ SRCS_MIN+= Target/ARM/A15SDOptimizer.cpp SRCS_MIN+= Target/ARM/ARMAsmPrinter.cpp SRCS_MIN+= Target/ARM/ARMBaseInstrInfo.cpp SRCS_MIN+= Target/ARM/ARMBaseRegisterInfo.cpp +SRCS_MIN+= Target/ARM/ARMCallLowering.cpp SRCS_MIN+= Target/ARM/ARMComputeBlockSize.cpp SRCS_MIN+= Target/ARM/ARMConstantIslandPass.cpp SRCS_MIN+= Target/ARM/ARMConstantPoolValue.cpp @@ -791,10 +808,13 @@ SRCS_MIN+= Target/ARM/ARMHazardRecognize SRCS_MIN+= Target/ARM/ARMISelDAGToDAG.cpp SRCS_MIN+= Target/ARM/ARMISelLowering.cpp SRCS_MIN+= Target/ARM/ARMInstrInfo.cpp +SRCS_MIN+= Target/ARM/ARMInstructionSelector.cpp +SRCS_MIN+= Target/ARM/ARMLegalizerInfo.cpp SRCS_MIN+= Target/ARM/ARMLoadStoreOptimizer.cpp SRCS_MIN+= Target/ARM/ARMMCInstLower.cpp SRCS_MIN+= Target/ARM/ARMMachineFunctionInfo.cpp SRCS_MIN+= Target/ARM/ARMOptimizeBarriersPass.cpp +SRCS_MIN+= Target/ARM/ARMRegisterBankInfo.cpp SRCS_MIN+= Target/ARM/ARMRegisterInfo.cpp SRCS_MIN+= Target/ARM/ARMSelectionDAGInfo.cpp SRCS_MIN+= Target/ARM/ARMSubtarget.cpp @@ -963,6 +983,7 @@ SRCS_MIN+= Target/X86/TargetInfo/X86Targ SRCS_MIN+= Target/X86/Utils/X86ShuffleDecode.cpp SRCS_MIN+= Target/X86/X86AsmPrinter.cpp SRCS_MIN+= Target/X86/X86CallFrameOptimization.cpp +SRCS_MIN+= Target/X86/X86CallLowering.cpp SRCS_MIN+= Target/X86/X86CallingConv.cpp SRCS_MIN+= Target/X86/X86EvexToVex.cpp SRCS_MIN+= Target/X86/X86ExpandPseudo.cpp @@ -976,12 +997,15 @@ SRCS_MIN+= Target/X86/X86ISelDAGToDAG.cp SRCS_MIN+= Target/X86/X86ISelLowering.cpp SRCS_MIN+= Target/X86/X86InstrFMA3Info.cpp SRCS_MIN+= Target/X86/X86InstrInfo.cpp +SRCS_MIN+= Target/X86/X86InstructionSelector.cpp SRCS_MIN+= Target/X86/X86InterleavedAccess.cpp +SRCS_MIN+= Target/X86/X86LegalizerInfo.cpp SRCS_MIN+= Target/X86/X86MCInstLower.cpp SRCS_MIN+= Target/X86/X86MachineFunctionInfo.cpp SRCS_MIN+= Target/X86/X86MacroFusion.cpp SRCS_MIN+= Target/X86/X86OptimizeLEAs.cpp SRCS_MIN+= Target/X86/X86PadShortFunction.cpp +SRCS_MIN+= Target/X86/X86RegisterBankInfo.cpp SRCS_MIN+= Target/X86/X86RegisterInfo.cpp SRCS_MIN+= Target/X86/X86SelectionDAGInfo.cpp SRCS_MIN+= Target/X86/X86ShuffleDecodeConstantPool.cpp @@ -1251,6 +1275,7 @@ TGHDRS+= Options.inc DisassemblerTables/-gen-disassembler \ EVEX2VEXTables/-gen-x86-EVEX2VEX-tables \ FastISel/-gen-fast-isel \ + GlobalISel/-gen-global-isel \ InstrInfo/-gen-instr-info \ MCCodeEmitter/-gen-emitter \ MCPseudoLowering/-gen-pseudo-lowering \ @@ -1272,6 +1297,7 @@ TGHDRS+= AArch64GenCallingConv.inc TGHDRS+= AArch64GenDAGISel.inc TGHDRS+= AArch64GenDisassemblerTables.inc TGHDRS+= AArch64GenFastISel.inc +TGHDRS+= AArch64GenGlobalISel.inc TGHDRS+= AArch64GenInstrInfo.inc TGHDRS+= AArch64GenMCCodeEmitter.inc TGHDRS+= AArch64GenMCPseudoLowering.inc @@ -1285,6 +1311,7 @@ TGHDRS+= ARMGenCallingConv.inc TGHDRS+= ARMGenDAGISel.inc TGHDRS+= ARMGenDisassemblerTables.inc TGHDRS+= ARMGenFastISel.inc +TGHDRS+= ARMGenGlobalISel.inc TGHDRS+= ARMGenInstrInfo.inc TGHDRS+= ARMGenMCCodeEmitter.inc TGHDRS+= ARMGenMCPseudoLowering.inc @@ -1329,6 +1356,7 @@ TGHDRS+= X86GenDAGISel.inc TGHDRS+= X86GenDisassemblerTables.inc TGHDRS+= X86GenEVEX2VEXTables.inc TGHDRS+= X86GenFastISel.inc +TGHDRS+= X86GenGlobalISel.inc TGHDRS+= X86GenInstrInfo.inc TGHDRS+= X86GenRegisterBank.inc TGHDRS+= X86GenRegisterInfo.inc Modified: projects/clang500-import/lib/clang/llvm.build.mk ============================================================================== --- projects/clang500-import/lib/clang/llvm.build.mk Mon May 22 16:16:48 2017 (r318655) +++ projects/clang500-import/lib/clang/llvm.build.mk Mon May 22 19:06:39 2017 (r318656) @@ -12,8 +12,7 @@ CFLAGS+= -I${SRCTOP}/lib/clang/include CFLAGS+= -I${LLVM_SRCS}/include -CFLAGS+= -DLLVM_ON_UNIX -CFLAGS+= -DLLVM_ON_FREEBSD +CFLAGS+= -DLLVM_BUILD_GLOBAL_ISEL CFLAGS+= -D__STDC_LIMIT_MACROS CFLAGS+= -D__STDC_CONSTANT_MACROS #CFLAGS+= -DNDEBUG From owner-svn-src-projects@freebsd.org Mon May 22 19:28:29 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 90189D780F6 for ; Mon, 22 May 2017 19:28:29 +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 410061720; Mon, 22 May 2017 19:28:29 +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 v4MJSSVH068259; Mon, 22 May 2017 19:28:28 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v4MJSPe7068225; Mon, 22 May 2017 19:28:25 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201705221928.v4MJSPe7068225@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Mon, 22 May 2017 19:28:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r318658 - in projects/clang500-import: contrib/compiler-rt/lib/builtins contrib/dma contrib/elftoolchain/nm contrib/netbsd-tests/usr.bin/grep contrib/top etc/mtree etc/periodic/daily gn... 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: Mon, 22 May 2017 19:28:29 -0000 Author: dim Date: Mon May 22 19:28:24 2017 New Revision: 318658 URL: https://svnweb.freebsd.org/changeset/base/318658 Log: Merge ^/head r318560 through r318657. Added: projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapdi2.c - copied unchanged from r318657, head/contrib/compiler-rt/lib/builtins/bswapdi2.c projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapsi2.c - copied unchanged from r318657, head/contrib/compiler-rt/lib/builtins/bswapsi2.c projects/clang500-import/lib/libc++experimental/ - copied from r318657, head/lib/libc++experimental/ projects/clang500-import/share/man/man4/ena.4 - copied unchanged from r318657, head/share/man/man4/ena.4 projects/clang500-import/sys/dev/ena/ - copied from r318657, head/sys/dev/ena/ projects/clang500-import/sys/modules/ena/ - copied from r318657, head/sys/modules/ena/ projects/clang500-import/usr.bin/compress/tests/ - copied from r318657, head/usr.bin/compress/tests/ Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/README.txt projects/clang500-import/contrib/dma/dma.8 projects/clang500-import/contrib/elftoolchain/nm/nm.1 projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh projects/clang500-import/contrib/top/top.c projects/clang500-import/etc/mtree/BSD.include.dist projects/clang500-import/etc/mtree/BSD.tests.dist projects/clang500-import/etc/periodic/daily/800.scrub-zfs projects/clang500-import/gnu/usr.bin/groff/tmac/mdoc.local.in projects/clang500-import/lib/Makefile projects/clang500-import/lib/libc/gen/Symbol.map projects/clang500-import/lib/libc/gen/_spinlock_stub.c projects/clang500-import/lib/libc/include/spinlock.h projects/clang500-import/lib/libcompiler_rt/Makefile.inc projects/clang500-import/lib/libthr/Makefile projects/clang500-import/lib/libthr/thread/thr_init.c projects/clang500-import/lib/libthr/thread/thr_rwlock.c projects/clang500-import/lib/libthr/thread/thr_spinlock.c projects/clang500-import/lib/libthr/thread/thr_stack.c projects/clang500-import/lib/libthr/thread/thr_symbols.c projects/clang500-import/release/Makefile projects/clang500-import/release/scripts/pkg-stage.sh projects/clang500-import/sys/Makefile projects/clang500-import/sys/arm/conf/NOTES projects/clang500-import/sys/compat/freebsd32/capabilities.conf projects/clang500-import/sys/compat/freebsd32/freebsd32_sysent.c projects/clang500-import/sys/compat/linuxkpi/common/include/asm/smp.h projects/clang500-import/sys/conf/files projects/clang500-import/sys/contrib/ipfilter/netinet/ip_fil.h projects/clang500-import/sys/dev/xen/netfront/netfront.c projects/clang500-import/sys/fs/msdosfs/denode.h projects/clang500-import/sys/fs/msdosfs/fat.h projects/clang500-import/sys/fs/msdosfs/msdosfs_conv.c projects/clang500-import/sys/fs/msdosfs/msdosfs_denode.c projects/clang500-import/sys/fs/msdosfs/msdosfs_fat.c projects/clang500-import/sys/fs/msdosfs/msdosfs_vfsops.c projects/clang500-import/sys/fs/msdosfs/msdosfs_vnops.c projects/clang500-import/sys/fs/msdosfs/msdosfsmount.h projects/clang500-import/sys/kern/capabilities.conf projects/clang500-import/sys/kern/init_sysent.c projects/clang500-import/sys/mips/atheros/ar71xx_machdep.c projects/clang500-import/sys/modules/Makefile projects/clang500-import/sys/net80211/ieee80211_adhoc.c projects/clang500-import/sys/net80211/ieee80211_hostap.c projects/clang500-import/sys/net80211/ieee80211_ht.c projects/clang500-import/sys/net80211/ieee80211_ht.h projects/clang500-import/sys/net80211/ieee80211_input.h projects/clang500-import/sys/net80211/ieee80211_mesh.c projects/clang500-import/sys/net80211/ieee80211_sta.c projects/clang500-import/sys/net80211/ieee80211_wds.c projects/clang500-import/sys/netinet/tcp_usrreq.c projects/clang500-import/sys/netinet6/udp6_usrreq.c projects/clang500-import/tests/sys/aio/aio_kqueue_test.c projects/clang500-import/tests/sys/aio/lio_kqueue_test.c projects/clang500-import/tools/build/mk/OptionalObsoleteFiles.inc projects/clang500-import/usr.bin/catman/catman.1 projects/clang500-import/usr.bin/catman/catman.c projects/clang500-import/usr.bin/compress/Makefile projects/clang500-import/usr.bin/compress/compress.c projects/clang500-import/usr.bin/grep/file.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.sbin/bsdinstall/scripts/script projects/clang500-import/usr.sbin/efivar/efivar.8 projects/clang500-import/usr.sbin/mountd/exports.5 projects/clang500-import/usr.sbin/nscd/query.c Directory Properties: projects/clang500-import/ (props changed) projects/clang500-import/contrib/compiler-rt/ (props changed) projects/clang500-import/contrib/dma/ (props changed) projects/clang500-import/contrib/elftoolchain/ (props changed) projects/clang500-import/contrib/netbsd-tests/ (props changed) projects/clang500-import/contrib/top/ (props changed) projects/clang500-import/sys/contrib/ipfilter/ (props changed) Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/README.txt ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/builtins/README.txt Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/README.txt Mon May 22 19:28:24 2017 (r318658) @@ -57,8 +57,8 @@ si_int __popcountsi2(si_int a); // bit si_int __popcountdi2(di_int a); // bit population si_int __popcountti2(ti_int a); // bit population -uint32_t __bswapsi2(uint32_t a); // a byteswapped, arm only -uint64_t __bswapdi2(uint64_t a); // a byteswapped, arm only +uint32_t __bswapsi2(uint32_t a); // a byteswapped, arm/mips only +uint64_t __bswapdi2(uint64_t a); // a byteswapped, arm/mips only // Integral arithmetic Copied: projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapdi2.c (from r318657, head/contrib/compiler-rt/lib/builtins/bswapdi2.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapdi2.c Mon May 22 19:28:24 2017 (r318658, copy of r318657, head/contrib/compiler-rt/lib/builtins/bswapdi2.c) @@ -0,0 +1,28 @@ +/* ===-- bswapdi2.c - Implement __bswapdi2 ---------------------------------=== + * + * The LLVM Compiler Infrastructure + * + * This file is dual licensed under the MIT and the University of Illinois Open + * Source Licenses. See LICENSE.TXT for details. + * + * ===----------------------------------------------------------------------=== + * + * This file implements __bswapdi2 for the compiler_rt library. + * + * ===----------------------------------------------------------------------=== + */ + +#include "int_lib.h" + +COMPILER_RT_ABI uint64_t +__bswapdi2 (uint64_t u) +{ + return ((((u) & 0xff00000000000000ULL) >> 56) + | (((u) & 0x00ff000000000000ULL) >> 40) + | (((u) & 0x0000ff0000000000ULL) >> 24) + | (((u) & 0x000000ff00000000ULL) >> 8) + | (((u) & 0x00000000ff000000ULL) << 8) + | (((u) & 0x0000000000ff0000ULL) << 24) + | (((u) & 0x000000000000ff00ULL) << 40) + | (((u) & 0x00000000000000ffULL) << 56)); +} Copied: projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapsi2.c (from r318657, head/contrib/compiler-rt/lib/builtins/bswapsi2.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapsi2.c Mon May 22 19:28:24 2017 (r318658, copy of r318657, head/contrib/compiler-rt/lib/builtins/bswapsi2.c) @@ -0,0 +1,25 @@ +/* ===-- bswapsi2.c - Implement __bswapsi2 ---------------------------------=== + * + * The LLVM Compiler Infrastructure + * + * This file is dual licensed under the MIT and the University of Illinois Open + * Source Licenses. See LICENSE.TXT for details. + * + * ===----------------------------------------------------------------------=== + * + * This file implements __bswapsi2 for the compiler_rt library. + * + * ===----------------------------------------------------------------------=== + */ + +#include "int_lib.h" + +COMPILER_RT_ABI uint32_t +__bswapsi2 (uint32_t u) +{ + + return ((((u) & 0xff000000) >> 24) + | (((u) & 0x00ff0000) >> 8) + | (((u) & 0x0000ff00) << 8) + | (((u) & 0x000000ff) << 24)); +} Modified: projects/clang500-import/contrib/dma/dma.8 ============================================================================== --- projects/clang500-import/contrib/dma/dma.8 Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/contrib/dma/dma.8 Mon May 22 19:28:24 2017 (r318658) @@ -30,7 +30,7 @@ .\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd February 13, 2014 +.Dd May 20, 2017 .Dt DMA 8 .Os .Sh NAME @@ -74,7 +74,7 @@ acts as a compatibility option for sendm .It Fl bp List all mails currently stored in the mail queue. .It Fl bq -Queue the mail, but don't attempt to deliver it. +Queue the mail, but do not attempt to deliver it. See also the .Sq DEFER config file setting below. @@ -82,9 +82,9 @@ config file setting below. .Pp All other .Ar mode Ns -s are are ignored. +s are ignored. .It Fl D -Don't run in the background. +Do not run in the background. Useful for debugging. .It Fl f Ar sender Set sender address (envelope-from) to @@ -198,7 +198,7 @@ The special name .Ql * can be used to create a catch-all alias, which gets used if no other matching alias is found. -Use the catch-all alias only if you don't want any local mail to be +Use the catch-all alias only if you do not want any local mail to be delivered. .It Ic SPOOLDIR Xo (string, default=/var/spool/dma) @@ -213,7 +213,7 @@ Just stick with the default. Path to the .Sq auth.conf file. -.It Ic SECURETRANS Xo +.It Ic SECURETRANSFER Xo (boolean, default=commented) .Xc Uncomment if you want TLS/SSL secured transfer. @@ -222,7 +222,7 @@ Uncomment if you want TLS/SSL secured tr .Xc Uncomment if you want to use STARTTLS. Only useful together with -.Sq SECURETRANS . +.Sq SECURETRANSFER . .It Ic OPPORTUNISTIC_TLS Xo (boolean, default=commented) .Xc @@ -234,7 +234,7 @@ the outside mail exchangers; in opportun be encrypted if the remote server supports STARTTLS, but an unencrypted delivery will still be made if the negotiation fails. Only useful together with -.Sq SECURETRANS +.Sq SECURETRANSFER and .Sq STARTTLS . .It Ic CERTFILE Xo @@ -305,7 +305,8 @@ will send all mails as setting it to .Ql percolator will send all mails as -.Ql Sm off Va username @percolator . +.Sm off +.Ql Va username @percolator . .Sm on .It Ic NULLCLIENT Xo .Xc Modified: projects/clang500-import/contrib/elftoolchain/nm/nm.1 ============================================================================== --- projects/clang500-import/contrib/elftoolchain/nm/nm.1 Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/contrib/elftoolchain/nm/nm.1 Mon May 22 19:28:24 2017 (r318658) @@ -24,7 +24,7 @@ .\" .\" $Id: nm.1 3195 2015-05-12 17:22:19Z emaste $ .\" -.Dd February 15, 2015 +.Dd May 21, 2017 .Os .Dt NM 1 .Sh NAME @@ -304,6 +304,8 @@ A local (uninitialized data) symbol. .It d A local data symbol. +.It r +A local read-only data symbol. .It t A local text symbol. .It v Modified: projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh ============================================================================== --- projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh Mon May 22 19:28:24 2017 (r318658) @@ -413,6 +413,26 @@ wflag_emptypat_body() atf_check -o file:test4 grep -w -e "" test4 } +atf_test_case excessive_matches +excessive_matches_head() +{ + atf_set "descr" "Check for proper handling of lines with excessive matches (PR 218811)" +} +excessive_matches_body() +{ + grep_type + if [ $? -eq $GREP_TYPE_GNU_FREEBSD ]; then + atf_expect_fail "this test does not pass with GNU grep in base" + fi + + for i in $(jot 4096); do + printf "x" >> test.in + done + + atf_check -s exit:0 -x '[ $(grep -o x test.in | wc -l) -eq 4096 ]' + atf_check -s exit:1 -x 'grep -on x test.in | grep -v "1:x"' +} + atf_test_case fgrep_sanity fgrep_sanity_head() { @@ -490,6 +510,39 @@ wv_combo_break_body() atf_check -s exit:1 grep -v -w "x" test2 } +atf_test_case ocolor_metadata +ocolor_metadata_head() +{ + atf_set "descr" "Check for -n/-b producing per-line metadata output" +} +ocolor_metadata_body() +{ + grep_type + if [ $? -eq $GREP_TYPE_GNU_FREEBSD ]; then + atf_expect_fail "this test does not pass with GNU grep in base" + fi + + printf "xxx\nyyyy\nzzz\nfoobarbaz\n" > test1 + check_expr="^[^:]*[0-9][^:]*:[^:]+$" + + atf_check -o inline:"1:1:xx\n" grep -bon "xx$" test1 + + atf_check -o inline:"2:4:yyyy\n" grep -bn "yy" test1 + + atf_check -o inline:"2:6:yy\n" grep -bon "yy$" test1 + + # These checks ensure that grep isn't producing bogus line numbering + # in the middle of a line. + atf_check -s exit:1 -x \ + "grep -Eon 'x|y|z|f' test1 | grep -Ev '${check_expr}'" + + atf_check -s exit:1 -x \ + "grep -En 'x|y|z|f' --color=always test1 | grep -Ev '${check_expr}'" + + atf_check -s exit:1 -x \ + "grep -Eon 'x|y|z|f' --color=always test1 | grep -Ev '${check_expr}'" +} + atf_test_case grep_nomatch_flags grep_nomatch_flags_head() { @@ -603,10 +656,12 @@ atf_init_test_cases() atf_add_test_case egrep_empty_invalid atf_add_test_case zerolen atf_add_test_case wflag_emptypat + atf_add_test_case excessive_matches atf_add_test_case wv_combo_break atf_add_test_case fgrep_sanity atf_add_test_case egrep_sanity atf_add_test_case grep_sanity + atf_add_test_case ocolor_metadata atf_add_test_case grep_nomatch_flags atf_add_test_case binary_flags atf_add_test_case badcontext Modified: projects/clang500-import/contrib/top/top.c ============================================================================== --- projects/clang500-import/contrib/top/top.c Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/contrib/top/top.c Mon May 22 19:28:24 2017 (r318658) @@ -433,7 +433,7 @@ char *argv[]; default: fprintf(stderr, "Top version %s\n" -"Usage: %s [-abCHIijnPqStuvz] [-d count] [-m io | cpu] [-o field] [-s time]\n" +"Usage: %s [-abCHIijnPqStuvwz] [-d count] [-m io | cpu] [-o field] [-s time]\n" " [-J jail] [-U username] [number]\n", version_string(), myname); exit(1); Modified: projects/clang500-import/etc/mtree/BSD.include.dist ============================================================================== --- projects/clang500-import/etc/mtree/BSD.include.dist Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/etc/mtree/BSD.include.dist Mon May 22 19:28:24 2017 (r318658) @@ -156,8 +156,6 @@ .. usb .. - utopia - .. vkbd .. wi Modified: projects/clang500-import/etc/mtree/BSD.tests.dist ============================================================================== --- projects/clang500-import/etc/mtree/BSD.tests.dist Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/etc/mtree/BSD.tests.dist Mon May 22 19:28:24 2017 (r318658) @@ -606,6 +606,8 @@ .. cmp .. + compress + .. cpio .. col Modified: projects/clang500-import/etc/periodic/daily/800.scrub-zfs ============================================================================== --- projects/clang500-import/etc/periodic/daily/800.scrub-zfs Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/etc/periodic/daily/800.scrub-zfs Mon May 22 19:28:24 2017 (r318658) @@ -71,7 +71,7 @@ case "$daily_scrub_zfs_enable" in # Now minus last scrub (both in seconds) converted to days. _scrub_diff=$(expr -e \( $(date +%s) - \ - $(date -j -f %F.%T ${_last_scrub} +%s) \) / 60 / 60 / 24) + $(date -j -v -70M -f %F.%T ${_last_scrub} +%s) \) / 60 / 60 / 24) if [ ${_scrub_diff} -lt ${_pool_threshold} ]; then echo " skipping scrubbing of pool '${pool}':" echo " last scrubbing is ${_scrub_diff} days ago, threshold is set to ${_pool_threshold} days" Modified: projects/clang500-import/gnu/usr.bin/groff/tmac/mdoc.local.in ============================================================================== --- projects/clang500-import/gnu/usr.bin/groff/tmac/mdoc.local.in Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/gnu/usr.bin/groff/tmac/mdoc.local.in Mon May 22 19:28:24 2017 (r318658) @@ -65,6 +65,7 @@ .ds doc-operating-system-FreeBSD-10.2 10.2 .ds doc-operating-system-FreeBSD-10.3 10.3 .ds doc-operating-system-FreeBSD-11.0 11.0 +.ds doc-operating-system-FreeBSD-11.1 11.1 .ds doc-operating-system-FreeBSD-12.0 12.0 . .\" Definitions for other *BSDs not (yet) in doc-common Modified: projects/clang500-import/lib/Makefile ============================================================================== --- projects/clang500-import/lib/Makefile Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/lib/Makefile Mon May 22 19:28:24 2017 (r318658) @@ -157,6 +157,9 @@ _libclang_rt= libclang_rt .if ${MK_LIBCPLUSPLUS} != "no" _libcxxrt= libcxxrt _libcplusplus= libc++ +.if ${MACHINE_CPUARCH} != "arm" +_libcplusplus+= libc++experimental +.endif .endif SUBDIR.${MK_EFI}+= libefivar Modified: projects/clang500-import/lib/libc/gen/Symbol.map ============================================================================== --- projects/clang500-import/lib/libc/gen/Symbol.map Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/lib/libc/gen/Symbol.map Mon May 22 19:28:24 2017 (r318658) @@ -485,7 +485,6 @@ FBSDprivate_1.0 { _pthread_sigmask; _pthread_testcancel; _spinlock; - _spinlock_debug; _spinunlock; _rtld_addr_phdr; _rtld_atfork_pre; Modified: projects/clang500-import/lib/libc/gen/_spinlock_stub.c ============================================================================== --- projects/clang500-import/lib/libc/gen/_spinlock_stub.c Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/lib/libc/gen/_spinlock_stub.c Mon May 22 19:28:24 2017 (r318658) @@ -38,7 +38,6 @@ __FBSDID("$FreeBSD$"); long _atomic_lock_stub(volatile long *); void _spinlock_stub(spinlock_t *); void _spinunlock_stub(spinlock_t *); -void _spinlock_debug_stub(spinlock_t *, char *, int); __weak_reference(_atomic_lock_stub, _atomic_lock); @@ -48,7 +47,6 @@ _atomic_lock_stub(volatile long *lck __u return (0L); } -__weak_reference(_spinlock, _spinlock_debug); #pragma weak _spinlock void _spinlock(spinlock_t *lck) Modified: projects/clang500-import/lib/libc/include/spinlock.h ============================================================================== --- projects/clang500-import/lib/libc/include/spinlock.h Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/lib/libc/include/spinlock.h Mon May 22 19:28:24 2017 (r318658) @@ -41,21 +41,17 @@ * Lock structure with room for debugging information. */ struct _spinlock { - volatile long access_lock; - volatile long lock_owner; - volatile char *fname; - volatile int lineno; + long spare1; + long spare2; + void *thr_extra; + int spare3; }; typedef struct _spinlock spinlock_t; #define _SPINLOCK_INITIALIZER { 0, 0, 0, 0 } #define _SPINUNLOCK(_lck) _spinunlock(_lck); -#ifdef _LOCK_DEBUG -#define _SPINLOCK(_lck) _spinlock_debug(_lck, __FILE__, __LINE__) -#else #define _SPINLOCK(_lck) _spinlock(_lck) -#endif /* * Thread function prototype definitions: @@ -64,7 +60,6 @@ __BEGIN_DECLS long _atomic_lock(volatile long *); void _spinlock(spinlock_t *); void _spinunlock(spinlock_t *); -void _spinlock_debug(spinlock_t *, char *, int); __END_DECLS #endif /* _SPINLOCK_H_ */ Modified: projects/clang500-import/lib/libcompiler_rt/Makefile.inc ============================================================================== --- projects/clang500-import/lib/libcompiler_rt/Makefile.inc Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/lib/libcompiler_rt/Makefile.inc Mon May 22 19:28:24 2017 (r318658) @@ -224,3 +224,10 @@ SRCS+= switch8.S SRCS+= switchu8.S SRCS+= sync_synchronize.S .endif + +# GCC-6.3 on mips32 requires bswap32 built-in. +.if ${MACHINE_CPUARCH} == "mips" +SRCS+= bswapdi2.c +SRCS+= bswapsi2.c +.endif + Modified: projects/clang500-import/lib/libthr/Makefile ============================================================================== --- projects/clang500-import/lib/libthr/Makefile Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/lib/libthr/Makefile Mon May 22 19:28:24 2017 (r318658) @@ -17,6 +17,7 @@ MK_SSP= no LIB=thr SHLIB_MAJOR= 3 WARNS?= 3 +NO_WTHREAD_SAFETY=1 CFLAGS+=-DPTHREAD_KERNEL CFLAGS+=-I${SRCTOP}/lib/libc/include -I${.CURDIR}/thread \ -I${SRCTOP}/include @@ -27,6 +28,12 @@ CFLAGS+=-I${SRCTOP}/libexec/rtld-elf/${M CFLAGS+=-I${SRCTOP}/lib/libthread_db CFLAGS+=-Winline +CFLAGS.thr_stack.c+= -Wno-cast-align +.include +.if !(${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 40300) +CFLAGS.thr_symbols.c+= -Wno-missing-variable-declarations +.endif + .ifndef NO_THREAD_UNWIND_STACK CFLAGS+=-fexceptions CFLAGS+=-D_PTHREAD_FORCED_UNWIND Modified: projects/clang500-import/lib/libthr/thread/thr_init.c ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_init.c Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/lib/libthr/thread/thr_init.c Mon May 22 19:28:24 2017 (r318658) @@ -173,7 +173,6 @@ STATIC_LIB_REQUIRE(_sigtimedwait); STATIC_LIB_REQUIRE(_sigwait); STATIC_LIB_REQUIRE(_sigwaitinfo); STATIC_LIB_REQUIRE(_spinlock); -STATIC_LIB_REQUIRE(_spinlock_debug); STATIC_LIB_REQUIRE(_spinunlock); STATIC_LIB_REQUIRE(_thread_init_hack); Modified: projects/clang500-import/lib/libthr/thread/thr_rwlock.c ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_rwlock.c Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/lib/libthr/thread/thr_rwlock.c Mon May 22 19:28:24 2017 (r318658) @@ -49,27 +49,42 @@ __weak_reference(_pthread_rwlock_unlock, __weak_reference(_pthread_rwlock_wrlock, pthread_rwlock_wrlock); __weak_reference(_pthread_rwlock_timedwrlock, pthread_rwlock_timedwrlock); -#define CHECK_AND_INIT_RWLOCK \ - if (*rwlock == THR_PSHARED_PTR) { \ - prwlock = __thr_pshared_offpage(rwlock, 0); \ - if (prwlock == NULL) \ - return (EINVAL); \ - } else if (__predict_false((prwlock = (*rwlock)) <= \ - THR_RWLOCK_DESTROYED)) { \ - if (prwlock == THR_RWLOCK_INITIALIZER) { \ - int ret; \ - ret = init_static(_get_curthread(), rwlock); \ - if (ret) \ - return (ret); \ - } else if (prwlock == THR_RWLOCK_DESTROYED) { \ - return (EINVAL); \ - } \ - prwlock = *rwlock; \ - } - -/* - * Prototypes - */ +static int init_static(struct pthread *thread, pthread_rwlock_t *rwlock); +static int init_rwlock(pthread_rwlock_t *rwlock, pthread_rwlock_t *rwlock_out); + +static int __always_inline +check_and_init_rwlock(pthread_rwlock_t *rwlock, pthread_rwlock_t *rwlock_out) +{ + if (__predict_false(*rwlock == THR_PSHARED_PTR || + *rwlock <= THR_RWLOCK_DESTROYED)) + return (init_rwlock(rwlock, rwlock_out)); + *rwlock_out = *rwlock; + return (0); +} + +static int __noinline +init_rwlock(pthread_rwlock_t *rwlock, pthread_rwlock_t *rwlock_out) +{ + pthread_rwlock_t prwlock; + int ret; + + if (*rwlock == THR_PSHARED_PTR) { + prwlock = __thr_pshared_offpage(rwlock, 0); + if (prwlock == NULL) + return (EINVAL); + } else if ((prwlock = *rwlock) <= THR_RWLOCK_DESTROYED) { + if (prwlock == THR_RWLOCK_INITIALIZER) { + ret = init_static(_get_curthread(), rwlock); + if (ret != 0) + return (ret); + } else if (prwlock == THR_RWLOCK_DESTROYED) { + return (EINVAL); + } + prwlock = *rwlock; + } + *rwlock_out = prwlock; + return (0); +} static int rwlock_init(pthread_rwlock_t *rwlock, const pthread_rwlockattr_t *attr) @@ -148,7 +163,9 @@ rwlock_rdlock_common(pthread_rwlock_t *r int flags; int ret; - CHECK_AND_INIT_RWLOCK + ret = check_and_init_rwlock(rwlock, &prwlock); + if (ret != 0) + return (ret); if (curthread->rdlock_count) { /* @@ -220,7 +237,9 @@ _pthread_rwlock_tryrdlock (pthread_rwloc int flags; int ret; - CHECK_AND_INIT_RWLOCK + ret = check_and_init_rwlock(rwlock, &prwlock); + if (ret != 0) + return (ret); if (curthread->rdlock_count) { /* @@ -253,7 +272,9 @@ _pthread_rwlock_trywrlock (pthread_rwloc pthread_rwlock_t prwlock; int ret; - CHECK_AND_INIT_RWLOCK + ret = check_and_init_rwlock(rwlock, &prwlock); + if (ret != 0) + return (ret); ret = _thr_rwlock_trywrlock(&prwlock->lock); if (ret == 0) @@ -268,7 +289,9 @@ rwlock_wrlock_common (pthread_rwlock_t * pthread_rwlock_t prwlock; int ret; - CHECK_AND_INIT_RWLOCK + ret = check_and_init_rwlock(rwlock, &prwlock); + if (ret != 0) + return (ret); /* * POSIX said the validity of the abstimeout parameter need Modified: projects/clang500-import/lib/libthr/thread/thr_spinlock.c ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_spinlock.c Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/lib/libthr/thread/thr_spinlock.c Mon May 22 19:28:24 2017 (r318658) @@ -65,7 +65,7 @@ __thr_spinunlock(spinlock_t *lck) { struct spinlock_extra *_extra; - _extra = (struct spinlock_extra *)lck->fname; + _extra = lck->thr_extra; THR_UMUTEX_UNLOCK(_get_curthread(), &_extra->lock); } @@ -78,9 +78,9 @@ __thr_spinlock(spinlock_t *lck) PANIC("Spinlock called when not threaded."); if (!initialized) PANIC("Spinlocks not initialized."); - if (lck->fname == NULL) + if (lck->thr_extra == NULL) init_spinlock(lck); - _extra = (struct spinlock_extra *)lck->fname; + _extra = lck->thr_extra; THR_UMUTEX_LOCK(_get_curthread(), &_extra->lock); } @@ -90,14 +90,14 @@ init_spinlock(spinlock_t *lck) struct pthread *curthread = _get_curthread(); THR_UMUTEX_LOCK(curthread, &spinlock_static_lock); - if ((lck->fname == NULL) && (spinlock_count < MAX_SPINLOCKS)) { - lck->fname = (char *)&extra[spinlock_count]; + if ((lck->thr_extra == NULL) && (spinlock_count < MAX_SPINLOCKS)) { + lck->thr_extra = &extra[spinlock_count]; _thr_umutex_init(&extra[spinlock_count].lock); extra[spinlock_count].owner = lck; spinlock_count++; } THR_UMUTEX_UNLOCK(curthread, &spinlock_static_lock); - if (lck->fname == NULL) + if (lck->thr_extra == NULL) PANIC("Warning: exceeded max spinlocks"); } Modified: projects/clang500-import/lib/libthr/thread/thr_stack.c ============================================================================== --- projects/clang500-import/lib/libthr/thread/thr_stack.c Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/lib/libthr/thread/thr_stack.c Mon May 22 19:28:24 2017 (r318658) @@ -290,19 +290,6 @@ _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) @@ -329,7 +316,3 @@ _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 Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/lib/libthr/thread/thr_symbols.c Mon May 22 19:28:24 2017 (r318658) @@ -37,10 +37,6 @@ __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/release/Makefile ============================================================================== --- projects/clang500-import/release/Makefile Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/release/Makefile Mon May 22 19:28:24 2017 (r318658) @@ -270,7 +270,7 @@ packagesystem: base.txz kernel.txz ${EXT pkg-stage: .if !defined(NOPKG) - env REPOS_DIR=${.CURDIR}/pkg_repos/ \ + env PORTSDIR=${PORTSDIR} REPOS_DIR=${.CURDIR}/pkg_repos/ \ sh ${.CURDIR}/scripts/pkg-stage.sh mkdir -p ${.OBJDIR}/dvd/packages/repos/ cp ${.CURDIR}/scripts/FreeBSD_install_cdrom.conf \ Modified: projects/clang500-import/release/scripts/pkg-stage.sh ============================================================================== --- projects/clang500-import/release/scripts/pkg-stage.sh Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/release/scripts/pkg-stage.sh Mon May 22 19:28:24 2017 (r318658) @@ -10,6 +10,7 @@ export PKG_DBDIR="/tmp/pkg" export PERMISSIVE="YES" export REPO_AUTOUPDATE="NO" export PKGCMD="/usr/sbin/pkg -d" +export PORTSDIR="${PORTSDIR:-/usr/ports}" _DVD_PACKAGES="archivers/unzip devel/subversion @@ -33,8 +34,8 @@ x11/kde4 x11/xorg" # If NOPORTS is set for the release, do not attempt to build pkg(8). -if [ ! -f /usr/ports/Makefile ]; then - echo "*** /usr/ports is missing! ***" +if [ ! -f ${PORTSDIR}/Makefile ]; then + echo "*** ${PORTSDIR} is missing! ***" echo "*** Skipping pkg-stage.sh ***" echo "*** Unset NOPORTS to fix this ***" exit 0 @@ -42,7 +43,7 @@ fi if [ ! -x /usr/local/sbin/pkg ]; then /etc/rc.d/ldconfig restart - /usr/bin/make -C /usr/ports/ports-mgmt/pkg install clean + /usr/bin/make -C ${PORTSDIR}/ports-mgmt/pkg install clean fi export DVD_DIR="dvd/packages" @@ -58,7 +59,7 @@ fi # Ensure the ports listed in _DVD_PACKAGES exist to sanitize the # final list. for _P in ${_DVD_PACKAGES}; do - if [ -d "/usr/ports/${_P}" ]; then + if [ -d "${PORTSDIR}/${_P}" ]; then DVD_PACKAGES="${DVD_PACKAGES} ${_P}" else echo "*** Skipping nonexistent port: ${_P}" Copied: projects/clang500-import/share/man/man4/ena.4 (from r318657, head/share/man/man4/ena.4) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/share/man/man4/ena.4 Mon May 22 19:28:24 2017 (r318658, copy of r318657, head/share/man/man4/ena.4) @@ -0,0 +1,255 @@ +.\" Copyright (c) 2015-2017 Amazon.com, Inc. or its affiliates. +.\" 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 COPYRIGHT HOLDERS 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 COPYRIGHT +.\" OWNER 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 04, 2017 +.Dt ENA 4 +.Os +.Sh NAME +.Nm ena +.Nd "FreeBSD kernel driver for Elastic Network Adapter (ENA) family" +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following line in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device ena" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +if_ena_load="YES" +.Ed +.Sh DESCRIPTION +The ENA is a networking interface designed to make good use of modern CPU +features and system architectures. +.Pp +The ENA device exposes a lightweight management interface with a +minimal set of memory mapped registers and extendable command set +through an Admin Queue. +.Pp +The driver supports a range of ENA devices, is link-speed independent +(i.e., the same driver is used for 10GbE, 25GbE, 40GbE, etc.), and has +a negotiated and extendable feature set. +.Pp +Some ENA devices support SR-IOV. This driver is used for both the +SR-IOV Physical Function (PF) and Virtual Function (VF) devices. +.Pp +The ENA devices enable high speed and low overhead network traffic +processing by providing multiple Tx/Rx queue pairs (the maximum number +is advertised by the device via the Admin Queue), a dedicated MSI-X +interrupt vector per Tx/Rx queue pair, and CPU cacheline optimized +data placement. +.Pp +The +.Nm +driver supports industry standard TCP/IP offload features such +as checksum offload and TCP transmit segmentation offload (TSO). +Receive-side scaling (RSS) is supported for multi-core scaling. +.Pp +The +.Nm +driver and its corresponding devices implement health +monitoring mechanisms such as watchdog, enabling the device and driver +to recover in a manner transparent to the application, as well as +debug logs. +.Pp +Some of the ENA devices support a working mode called Low-latency +Queue (LLQ), which saves several more microseconds. This feature will +be implemented for driver in future releases. +.Sh HARDWARE +Supported PCI vendor ID/device IDs: +.Pp +.Bl -bullet -compact +.It +1d0f:0ec2 - ENA PF +.It +1d0f:1ec2 - ENA PF with LLQ support +.It +1d0f:ec20 - ENA VF +.It +1d0f:ec21 - ENA VF with LLQ support +.El +.Sh DIAGNOSTICS +.Ss Device initialization phase: +.Bl -diag +.It ena%d: failed to init mmio read less +.Pp +Error occured during initialization of the mmio register read request. +.It ena%d: Can not reset device +.Pp +Device could not be reset; device may not be responding or is already +during reset. +.It ena%d: device version is too low +.Pp +Version of the controller is too low and it is not supported by the driver. +.It ena%d: Invalid dma width value %d +.Pp +The controller is able to request dma transcation width. Device stopped +responding or it demanded invalid value. +.It ena%d: Can not initialize ena admin queue with device +.Pp +Initialization of the Admin Queue failed; device may not be responding or there +was a problem with initialization of the resources. +.It ena%d: Cannot get attribute for ena device rc: %d +.Pp +Failed to get attributes of the device from the controller. +.It ena%d: Cannot configure aenq groups rc: %d +.Pp +Errors occured when trying to configure AENQ groups. +.El +.Ss Driver initialisation/shutdown phase: +.Bl -diag +.It ena%d: PCI resource allocation failed! +.It ena%d: allocating ena_dev failed +.It ena%d: failed to pmap registers bar +.It ena%d: Error while setting up bufring +.It ena%d: Error with initialization of IO rings +.It ena%d: can not allocate ifnet structure +.It ena%d: Error with network interface setup +.It ena%d: Failed to enable and set the admin interrupts +.It ena%d: Failed to allocate %d, vectors %d +.It ena%d: Failed to enable MSIX, vectors %d rc %d +.It ena%d: Error with MSI-X enablement +.It ena%d: could not allocate irq vector: %d +.It ena%d: Unable to allocate bus resource: registers +.Pp +Resource allocation failed when initializing the device; driver will not +be attached. +.It ena%d: ENA device init failed (err: %d) +.Pp +Device initialization failed; driver will not be attached. +.It ena%d: could not activate irq vector: %d +.Pp +Error occured when trying to activate interrupt vectors for Admin Queue. +.It ena%d: failed to register interrupt handler for irq %ju: %d +.Pp +Error occured when trying to register Admin Queue interrupt handler. +.It ena%d: Cannot setup mgmnt queue intr +.Pp +Error occured during configuration of the Admin Queue interrupts. +.It ena%d: Enable MSI-X failed +.Pp +Configuration of the MSI-X for Admin Queue failed; there could be lack +of resources or interrupts could not have been configured; driver will +not be attached. +.It ena%d: VLAN is in use, detach first +.Pp +VLANs are being used when trying to detach the driver; VLANs should be detached +first and then detach routine should be called again. +.It ena%d: Unmapped RX DMA tag associations +.It ena%d: Unmapped TX DMA tag associations +.Pp +Error occured when trying to destroy RX/TX DMA tag. +.It ena%d: Cannot init RSS +.It ena%d: Cannot fill indirect table +.It ena%d: Cannot fill indirect table +.It ena%d: Cannot fill hash function +.It ena%d: Cannot fill hash control +.It ena%d: WARNING: RSS was not properly initialized, it will affect bandwidth +.Pp +Error occured during initialization of one of RSS resources; device is still +going to work but it will affect performance because all RX packets will be +passed to queue 0 and there will be no hash information. +.It ena%d: failed to tear down irq: %d +.It ena%d: dev has no parent while releasing res for irq: %d +Release of the interrupts failed. +.El +.Ss Additional diagnostic: +.Bl -diag +.It ena%d: Cannot get attribute for ena device +.Pp +This message appears when trying to change MTU and driver is unable to get +attributes from the device. +.It ena%d: Invalid MTU setting. new_mtu: %d +.Pp +Requested MTU value is not supported and will not be set. +.It ena%d: keep alive watchdog timeout +.Pp +Device stopped responding and will be reset. +.It ena%d: Found a Tx that wasn't completed on time, qid %d, index %d. +.Pp +Packet was pushed to the NIC but not sent within given time limit; it may +be caused by hang of the IO queue. +.It ena%d: The number of lost tx completion is aboce the threshold (%d > %d). Reset the device +.Pp +If too many Tx wasn't completed on time the device is going to be reset; it may +be caused by hanged queue or device. +.It ena%d: trigger reset is on +.Pp +Device will be reset; reset is triggered either by watchdog or if too many TX +packets were not completed on time. +.It ena%d: invalid value recvd +.Pp +Link status received from the device in the AENQ handler is invalid. +.It ena%d: Allocation for Tx Queue %u failed +.It ena%d: Allocation for Rx Queue %u failed +.It ena%d: Unable to create Rx DMA map for buffer %d +.It ena%d: Failed to create io TX queue #%d rc: %d +.It ena%d: Failed to get TX queue handlers. TX queue num %d rc: %d +.It ena%d: Failed to create io RX queue[%d] rc: %d +.It ena%d: Failed to get RX queue handlers. RX queue num %d rc: %d +.It ena%d: failed to request irq +.It ena%d: could not allocate irq vector: %d +.It ena%d: failed to register interrupt handler for irq %ju: %d +.Pp +IO resources initialization failed. Interface will not be brought up. +.It ena%d: LRO[%d] Initialization failed! +.Pp +Initialization of the LRO for the RX ring failed. +.It ena%d: failed to alloc buffer for rx queue +.It ena%d: failed to add buffer for rx queue %d +.It ena%d: refilled rx queue %d with %d pages only +.Pp +Allocation of resources used on RX path failed; if happened during +initialization of the IO queue, the interface will not be brought up. +.It ena%d: ioctl promisc/allmulti +.Pp +IOCTL request for the device to work in promiscuous/allmulti mode; see +.Xr ifconfig 8 +for more details. +.It ena%d: too many fragments. Last fragment: %d! +.Pp +Packet with unsupported number of segments was queued for sending to the +device; packet will be dropped. +.Sh SUPPORT +If an issue is identified with the released source code with a supported adapter +email the specific information related to the issue to +.Aq Mt mk@semihalf.com +and +.Aq Mt mw@semihalf.com . +.Sh SEE ALSO +.Xr vlan 4 , +.Xr ifconfig 8 +.Sh AUTHORS +The +.Nm +driver was written by +.An Semihalf. Modified: projects/clang500-import/sys/Makefile ============================================================================== --- projects/clang500-import/sys/Makefile Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/sys/Makefile Mon May 22 19:28:24 2017 (r318658) @@ -59,19 +59,7 @@ TAGS ${.CURDIR}/TAGS: ${.CURDIR}/cscope. rm -f ${.CURDIR}/TAGS cd ${.CURDIR}; xargs etags -a < ${.CURDIR}/cscope.files -# You need the textproc/glimpse ports for this. -glimpse: -.if !exists(${.CURDIR}/.glimpse_exclude) - echo .svn > ${.CURDIR}/.glimpse_exclude - echo /compile/ >> ${.CURDIR}/.glimpse_exclude -.endif - cd ${.CURDIR}; glimpseindex -H . -B -f -o . - -glimpse-clean: - cd ${.CURDIR}; rm -f .glimpse_* - -.if !(make(cscope) || make(cscope-clean) || make(cscope-hook) || make(TAGS) || \ - make(glimpse) || make(glimpse-clean)) +.if !(make(cscope) || make(cscope-clean) || make(cscope-hook) || make(TAGS)) .include # The boot loader Modified: projects/clang500-import/sys/arm/conf/NOTES ============================================================================== --- projects/clang500-import/sys/arm/conf/NOTES Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/sys/arm/conf/NOTES Mon May 22 19:28:24 2017 (r318658) @@ -79,6 +79,7 @@ nodevice snake_saver nodevice star_saver nodevice warp_saver +nodevice ccr nodevice cxgbe nodevice cxgbev nodevice snd_cmi Modified: projects/clang500-import/sys/compat/freebsd32/capabilities.conf ============================================================================== --- projects/clang500-import/sys/compat/freebsd32/capabilities.conf Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/sys/compat/freebsd32/capabilities.conf Mon May 22 19:28:24 2017 (r318658) @@ -188,7 +188,6 @@ renameat symlinkat unlinkat freebsd32_utimensat -open pdfork pdgetpid pdkill Modified: projects/clang500-import/sys/compat/freebsd32/freebsd32_sysent.c ============================================================================== --- projects/clang500-import/sys/compat/freebsd32/freebsd32_sysent.c Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/sys/compat/freebsd32/freebsd32_sysent.c Mon May 22 19:28:24 2017 (r318658) @@ -57,7 +57,7 @@ struct sysent freebsd32_sysent[] = { { 0, (sy_call_t *)sys_fork, AUE_FORK, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 2 = fork */ { AS(read_args), (sy_call_t *)sys_read, AUE_READ, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 3 = read */ { AS(write_args), (sy_call_t *)sys_write, AUE_WRITE, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 4 = write */ - { AS(open_args), (sy_call_t *)sys_open, AUE_OPEN_RWTC, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 5 = open */ + { AS(open_args), (sy_call_t *)sys_open, AUE_OPEN_RWTC, NULL, 0, 0, 0, SY_THR_STATIC }, /* 5 = open */ { AS(close_args), (sy_call_t *)sys_close, AUE_CLOSE, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 6 = close */ { AS(freebsd32_wait4_args), (sy_call_t *)freebsd32_wait4, AUE_WAIT4, NULL, 0, 0, 0, SY_THR_STATIC }, /* 7 = freebsd32_wait4 */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 8 = obsolete old creat */ Modified: projects/clang500-import/sys/compat/linuxkpi/common/include/asm/smp.h ============================================================================== --- projects/clang500-import/sys/compat/linuxkpi/common/include/asm/smp.h Mon May 22 19:22:06 2017 (r318657) +++ projects/clang500-import/sys/compat/linuxkpi/common/include/asm/smp.h Mon May 22 19:28:24 2017 (r318658) @@ -37,4 +37,12 @@ int linux_wbinvd_on_all_cpus(void); #endif +#define get_cpu() ({ \ + sched_pin(); \ + PCPU_GET(cpuid); \ +}) + +#define put_cpu() \ + sched_unpin() + #endif /* _ASM_SMP_H_ */ Modified: projects/clang500-import/sys/conf/files ============================================================================== --- projects/clang500-import/sys/conf/files Mon May 22 19:22:06 2017 (r318657) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Mon May 22 21:17: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 ACB2DD77F21 for ; Mon, 22 May 2017 21:17:49 +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 40C571252; Mon, 22 May 2017 21:17:49 +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 v4MLHmer014250; Mon, 22 May 2017 21:17:48 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v4MLHjQX014222; Mon, 22 May 2017 21:17:45 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201705222117.v4MLHjQX014222@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Mon, 22 May 2017 21:17:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r318681 - in projects/clang500-import: contrib/compiler-rt/include/xray contrib/compiler-rt/lib/asan contrib/compiler-rt/lib/lsan contrib/compiler-rt/lib/msan contrib/compiler-rt/lib/sa... 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: Mon, 22 May 2017 21:17:49 -0000 Author: dim Date: Mon May 22 21:17:44 2017 New Revision: 318681 URL: https://svnweb.freebsd.org/changeset/base/318681 Log: Merge llvm, clang, lld, lldb, compiler-rt and libc++ r303571, and update build glue. Added: projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/LazyRandomTypeCollection.h - copied unchanged from r318674, vendor/llvm/dist/include/llvm/DebugInfo/CodeView/LazyRandomTypeCollection.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeCollection.h - copied unchanged from r318674, vendor/llvm/dist/include/llvm/DebugInfo/CodeView/TypeCollection.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeTableCollection.h - copied unchanged from r318674, vendor/llvm/dist/include/llvm/DebugInfo/CodeView/TypeTableCollection.h projects/clang500-import/contrib/llvm/include/llvm/IR/DerivedUser.h - copied unchanged from r318674, vendor/llvm/dist/include/llvm/IR/DerivedUser.h projects/clang500-import/contrib/llvm/include/llvm/Object/COFFModuleDefinition.h - copied unchanged from r318674, vendor/llvm/dist/include/llvm/Object/COFFModuleDefinition.h projects/clang500-import/contrib/llvm/include/llvm/Object/WindowsResource.h - copied unchanged from r318674, vendor/llvm/dist/include/llvm/Object/WindowsResource.h projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp - copied unchanged from r318674, vendor/llvm/dist/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/TypeIndex.cpp - copied unchanged from r318674, vendor/llvm/dist/lib/DebugInfo/CodeView/TypeIndex.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/TypeTableCollection.cpp - copied unchanged from r318674, vendor/llvm/dist/lib/DebugInfo/CodeView/TypeTableCollection.cpp projects/clang500-import/contrib/llvm/lib/Object/COFFImportFile.cpp - copied unchanged from r318674, vendor/llvm/dist/lib/Object/COFFImportFile.cpp projects/clang500-import/contrib/llvm/lib/Object/COFFModuleDefinition.cpp - copied unchanged from r318674, vendor/llvm/dist/lib/Object/COFFModuleDefinition.cpp projects/clang500-import/contrib/llvm/lib/Object/WindowsResource.cpp - copied unchanged from r318674, vendor/llvm/dist/lib/Object/WindowsResource.cpp projects/clang500-import/contrib/llvm/lib/Support/BinaryStreamRef.cpp - copied unchanged from r318674, vendor/llvm/dist/lib/Support/BinaryStreamRef.cpp Deleted: projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/CVTypeDumper.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/RandomAccessTypeVisitor.h projects/clang500-import/contrib/llvm/lib/CodeGen/LiveRangeShrink.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/CVTypeDumper.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/RandomAccessTypeVisitor.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/Librarian.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/ModuleDef.cpp Modified: projects/clang500-import/contrib/compiler-rt/include/xray/xray_interface.h projects/clang500-import/contrib/compiler-rt/lib/asan/asan_flags.cc projects/clang500-import/contrib/compiler-rt/lib/lsan/lsan_common_mac.cc projects/clang500-import/contrib/compiler-rt/lib/msan/msan_interceptors.cc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.cc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.h projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flag_parser.h projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.h projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.inc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_common.cc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win.cc projects/clang500-import/contrib/compiler-rt/lib/scudo/scudo_flags.cpp projects/clang500-import/contrib/compiler-rt/lib/xray/xray_interface.cc projects/clang500-import/contrib/llvm/include/llvm/ADT/APInt.h projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallPtrSet.h projects/clang500-import/contrib/llvm/include/llvm/ADT/Statistic.h projects/clang500-import/contrib/llvm/include/llvm/ADT/Triple.h projects/clang500-import/contrib/llvm/include/llvm/Analysis/MemorySSA.h projects/clang500-import/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h projects/clang500-import/contrib/llvm/include/llvm/Analysis/TargetLibraryInfo.h projects/clang500-import/contrib/llvm/include/llvm/Analysis/ValueTracking.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/MachineValueType.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/Passes.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/StackProtector.h projects/clang500-import/contrib/llvm/include/llvm/CodeGen/ValueTypes.td projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/CVRecord.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/CVTypeVisitor.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/SymbolDumper.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeDatabase.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/TypeSerializer.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeStreamMerger.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFCompileUnit.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFContext.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFRelocMap.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFTypeUnit.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/DWARF/DWARFUnit.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/PDBTypeServerHandler.h projects/clang500-import/contrib/llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h projects/clang500-import/contrib/llvm/include/llvm/IR/Argument.h projects/clang500-import/contrib/llvm/include/llvm/IR/BasicBlock.h projects/clang500-import/contrib/llvm/include/llvm/IR/Constant.h projects/clang500-import/contrib/llvm/include/llvm/IR/Constants.h projects/clang500-import/contrib/llvm/include/llvm/IR/Function.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/InlineAsm.h projects/clang500-import/contrib/llvm/include/llvm/IR/InstrTypes.h projects/clang500-import/contrib/llvm/include/llvm/IR/Instruction.def 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/Metadata.h projects/clang500-import/contrib/llvm/include/llvm/IR/OperandTraits.h projects/clang500-import/contrib/llvm/include/llvm/IR/Operator.h projects/clang500-import/contrib/llvm/include/llvm/IR/PatternMatch.h projects/clang500-import/contrib/llvm/include/llvm/IR/User.h projects/clang500-import/contrib/llvm/include/llvm/IR/Value.def projects/clang500-import/contrib/llvm/include/llvm/IR/Value.h projects/clang500-import/contrib/llvm/include/llvm/InitializePasses.h projects/clang500-import/contrib/llvm/include/llvm/Object/Binary.h projects/clang500-import/contrib/llvm/include/llvm/Object/COFFImportFile.h projects/clang500-import/contrib/llvm/include/llvm/Object/Decompressor.h projects/clang500-import/contrib/llvm/include/llvm/Object/ELF.h projects/clang500-import/contrib/llvm/include/llvm/Object/RelocVisitor.h projects/clang500-import/contrib/llvm/include/llvm/PassInfo.h projects/clang500-import/contrib/llvm/include/llvm/PassSupport.h projects/clang500-import/contrib/llvm/include/llvm/Support/BinaryStreamReader.h projects/clang500-import/contrib/llvm/include/llvm/Support/BinaryStreamRef.h projects/clang500-import/contrib/llvm/include/llvm/Support/BinaryStreamWriter.h projects/clang500-import/contrib/llvm/include/llvm/Support/FileSystem.h projects/clang500-import/contrib/llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td projects/clang500-import/contrib/llvm/include/llvm/Transforms/IPO/FunctionImport.h projects/clang500-import/contrib/llvm/include/llvm/Transforms/Scalar/GVNExpression.h projects/clang500-import/contrib/llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h 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/CallGraphSCCPass.cpp projects/clang500-import/contrib/llvm/lib/Analysis/InstructionSimplify.cpp projects/clang500-import/contrib/llvm/lib/Analysis/MemorySSA.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/ValueTracking.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/ValueList.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.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/DwarfEHPrepare.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/GlobalISel/InstructionSelector.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/InterleavedAccessPass.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/LLVMTargetMachine.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/LowerEmuTLS.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/MachineBlockPlacement.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/MachineModuleInfo.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/RegisterCoalescer.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SafeStack.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SafeStackColoring.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/SelectionDAG/StatepointLowering.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/StackProtector.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/TargetPassConfig.cpp projects/clang500-import/contrib/llvm/lib/CodeGen/WinEHPrepare.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/CVTypeVisitor.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/TypeDatabase.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/TypeDumpVisitor.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/CodeView/TypeSerializer.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/DWARF/DWARFUnit.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/PDB/Native/DbiStream.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/PDB/Native/PDBTypeServerHandler.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/PDB/Native/TpiStream.cpp projects/clang500-import/contrib/llvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp projects/clang500-import/contrib/llvm/lib/Demangle/ItaniumDemangle.cpp projects/clang500-import/contrib/llvm/lib/IR/Attributes.cpp projects/clang500-import/contrib/llvm/lib/IR/AutoUpgrade.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/DataLayout.cpp projects/clang500-import/contrib/llvm/lib/IR/Function.cpp projects/clang500-import/contrib/llvm/lib/IR/IRBuilder.cpp projects/clang500-import/contrib/llvm/lib/IR/InlineAsm.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/LLVMContextImpl.cpp projects/clang500-import/contrib/llvm/lib/IR/PassRegistry.cpp projects/clang500-import/contrib/llvm/lib/IR/User.cpp projects/clang500-import/contrib/llvm/lib/IR/Value.cpp projects/clang500-import/contrib/llvm/lib/IR/ValueTypes.cpp projects/clang500-import/contrib/llvm/lib/IR/Verifier.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/Object/Binary.cpp projects/clang500-import/contrib/llvm/lib/Object/Decompressor.cpp projects/clang500-import/contrib/llvm/lib/Passes/PassBuilder.cpp projects/clang500-import/contrib/llvm/lib/Support/APInt.cpp projects/clang500-import/contrib/llvm/lib/Support/BinaryStreamReader.cpp projects/clang500-import/contrib/llvm/lib/Support/BinaryStreamWriter.cpp projects/clang500-import/contrib/llvm/lib/Support/FormattedStream.cpp projects/clang500-import/contrib/llvm/lib/Support/Triple.cpp projects/clang500-import/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.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/AArch64TargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPU.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUAnnotateKernelFeatures.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp 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/AMDGPUInstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPULowerIntrinsics.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPURegisterInfo.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/BUFInstructions.td projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h 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/R600ClauseMergePass.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/R600ControlFlowFinalizer.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/R600ExpandSpecialInstrs.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/R600OptimizeVectorRegisters.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/R600Packetizer.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/R600RegisterInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/R600RegisterInfo.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIFrameLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIFrameLowering.h 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/SIInstrFormats.td projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SIRegisterInfo.h projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/SOPInstructions.td projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h projects/clang500-import/contrib/llvm/lib/Target/ARM/ARMTargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp projects/clang500-import/contrib/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/Mips.h projects/clang500-import/contrib/llvm/lib/Target/Mips/Mips16HardFloat.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsLongBranch.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsModuleISelDAGToDAG.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsOptimizePICCall.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsOs16.cpp projects/clang500-import/contrib/llvm/lib/Target/Mips/MipsTargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCInstrAltivec.td projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/Sparc/DelaySlotFiller.cpp projects/clang500-import/contrib/llvm/lib/Target/Sparc/LeonPasses.cpp projects/clang500-import/contrib/llvm/lib/Target/Sparc/LeonPasses.h projects/clang500-import/contrib/llvm/lib/Target/Sparc/Sparc.h projects/clang500-import/contrib/llvm/lib/Target/Sparc/SparcTargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86.td projects/clang500-import/contrib/llvm/lib/Target/X86/X86CallingConv.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/X86ISelLowering.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstrAVX512.td projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstrFragmentsSIMD.td projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstrInfo.cpp projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstrInfo.td projects/clang500-import/contrib/llvm/lib/Target/X86/X86InstrTSX.td 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/X86RegisterInfo.td projects/clang500-import/contrib/llvm/lib/Target/X86/X86Subtarget.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/XCore/XCoreTargetMachine.cpp projects/clang500-import/contrib/llvm/lib/Transforms/IPO/PassManagerBuilder.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/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/InstCombineMulDivRem.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/EarlyCSE.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/GVN.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/LoadCombine.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/LoopPredication.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/LoopRotation.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/SROA.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/CloneFunction.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp projects/clang500-import/contrib/llvm/lib/Transforms/Utils/SimplifyLibCalls.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/tools/clang/include/clang/AST/ASTContext.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/CXXInheritance.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/AST/Type.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/AddressSpaces.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/Attr.td projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/AttrDocs.td projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td projects/clang500-import/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Format/Format.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Lex/ModuleMap.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/DeclSpec.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Sema/Sema.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Serialization/ASTReader.h projects/clang500-import/contrib/llvm/tools/clang/include/clang/Serialization/ASTWriter.h projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ASTContext.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/CXXInheritance.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/DeclBase.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/Type.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/AST/TypePrinter.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Basic/Targets.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGAtomic.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/CGClass.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGDecl.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExpr.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExprCXX.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGExprScalar.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGObjC.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGStmtOpenMP.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CGValue.h projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.h projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypeCache.h projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.h projects/clang500-import/contrib/llvm/tools/clang/lib/Format/BreakableToken.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/UnwrappedLineFormatter.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.cpp 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/IndexSymbol.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Index/USRGeneration.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/PPLexerChange.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseCXXInlineMethods.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/ParseOpenMP.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParsePragma.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseStmt.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseTemplate.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/ParseTentative.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Parse/Parser.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/SemaLookup.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/ASTReaderDecl.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTWriter.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/Serialization/ASTWriterDecl.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporter.cpp projects/clang500-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp projects/clang500-import/contrib/llvm/tools/llc/llc.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/CMakeLists.txt projects/clang500-import/contrib/llvm/tools/lld/COFF/Config.h projects/clang500-import/contrib/llvm/tools/lld/COFF/DLL.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/DLL.h projects/clang500-import/contrib/llvm/tools/lld/COFF/Driver.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/Driver.h projects/clang500-import/contrib/llvm/tools/lld/COFF/DriverUtils.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/InputFiles.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/InputFiles.h projects/clang500-import/contrib/llvm/tools/lld/COFF/Options.td projects/clang500-import/contrib/llvm/tools/lld/COFF/PDB.cpp projects/clang500-import/contrib/llvm/tools/lld/COFF/SymbolTable.h projects/clang500-import/contrib/llvm/tools/lld/COFF/Writer.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/InputSection.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/InputSection.h projects/clang500-import/contrib/llvm/tools/lld/ELF/LinkerScript.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/MapFile.cpp projects/clang500-import/contrib/llvm/tools/lld/ELF/MapFile.h 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/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/Writer.cpp projects/clang500-import/contrib/llvm/tools/lldb/include/lldb/Utility/Status.h projects/clang500-import/contrib/llvm/tools/lldb/source/Core/IOHandler.cpp projects/clang500-import/contrib/llvm/tools/lldb/source/Utility/Status.cpp projects/clang500-import/contrib/llvm/tools/llvm-lto/llvm-lto.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/Analyze.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/CompactTypeDumpVisitor.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/CompactTypeDumpVisitor.h projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/LLVMOutputStyle.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/LLVMOutputStyle.h projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/PdbYaml.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/YAMLOutputStyle.h projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/YamlTypeDumper.cpp projects/clang500-import/contrib/llvm/tools/llvm-pdbdump/llvm-pdbdump.cpp projects/clang500-import/contrib/llvm/tools/llvm-readobj/COFFDumper.cpp projects/clang500-import/contrib/llvm/tools/opt/opt.cpp projects/clang500-import/contrib/llvm/utils/TableGen/CodeGenTarget.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 projects/clang500-import/lib/clang/libllvm/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 Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/include/xray/xray_interface.h Mon May 22 21:17:44 2017 (r318681) @@ -69,6 +69,10 @@ 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)); +/// This removes whatever the currently provided custom event handler is. +/// Returns 1 on success, 0 on error. +extern int __xray_remove_customevent_handler(); + enum XRayPatchingStatus { NOT_INITIALIZED = 0, SUCCESS = 1, Modified: projects/clang500-import/contrib/compiler-rt/lib/asan/asan_flags.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/asan/asan_flags.cc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/asan/asan_flags.cc Mon May 22 21:17:44 2017 (r318681) @@ -194,10 +194,6 @@ 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/lsan/lsan_common_mac.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/lsan/lsan_common_mac.cc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/lsan/lsan_common_mac.cc Mon May 22 21:17:44 2017 (r318681) @@ -110,7 +110,8 @@ void ProcessGlobalRegions(Frontier *fron for (const __sanitizer::LoadedModule::AddressRange &range : modules[i].ranges()) { - if (range.executable || !range.readable) continue; + // Sections storing global variables are writable and non-executable + if (range.executable || !range.writable) continue; ScanGlobalRange(range.beg, range.end, frontier); } Modified: projects/clang500-import/contrib/compiler-rt/lib/msan/msan_interceptors.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/msan/msan_interceptors.cc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/msan/msan_interceptors.cc Mon May 22 21:17:44 2017 (r318681) @@ -341,6 +341,33 @@ INTERCEPTOR(char *, __strdup, char *src) #define MSAN_MAYBE_INTERCEPT___STRDUP #endif +INTERCEPTOR(char *, strndup, char *src, SIZE_T n) { + ENSURE_MSAN_INITED(); + GET_STORE_STACK_TRACE; + // On FreeBSD strndup() leverages strnlen(). + InterceptorScope interceptor_scope; + SIZE_T copy_size = REAL(strnlen)(src, n); + char *res = REAL(strndup)(src, n); + CopyShadowAndOrigin(res, src, copy_size, &stack); + __msan_unpoison(res + copy_size, 1); // \0 + return res; +} + +#if !SANITIZER_FREEBSD +INTERCEPTOR(char *, __strndup, char *src, SIZE_T n) { + ENSURE_MSAN_INITED(); + GET_STORE_STACK_TRACE; + SIZE_T copy_size = REAL(strnlen)(src, n); + char *res = REAL(__strndup)(src, n); + CopyShadowAndOrigin(res, src, copy_size, &stack); + __msan_unpoison(res + copy_size, 1); // \0 + return res; +} +#define MSAN_MAYBE_INTERCEPT___STRNDUP INTERCEPT_FUNCTION(__strndup) +#else +#define MSAN_MAYBE_INTERCEPT___STRNDUP +#endif + INTERCEPTOR(char *, gcvt, double number, SIZE_T ndigit, char *buf) { ENSURE_MSAN_INITED(); char *res = REAL(gcvt)(number, ndigit, buf); @@ -1344,13 +1371,6 @@ int OnExit() { return __msan_memcpy(to, from, size); \ } -#define COMMON_INTERCEPTOR_COPY_STRING(ctx, to, from, size) \ - do { \ - GET_STORE_STACK_TRACE; \ - CopyShadowAndOrigin(to, from, size, &stack); \ - __msan_unpoison(to + size, 1); \ - } while (false) - #include "sanitizer_common/sanitizer_platform_interceptors.h" #include "sanitizer_common/sanitizer_common_interceptors.inc" @@ -1518,6 +1538,8 @@ void InitializeInterceptors() { INTERCEPT_FUNCTION(stpcpy); // NOLINT INTERCEPT_FUNCTION(strdup); MSAN_MAYBE_INTERCEPT___STRDUP; + INTERCEPT_FUNCTION(strndup); + MSAN_MAYBE_INTERCEPT___STRNDUP; INTERCEPT_FUNCTION(strncpy); // NOLINT INTERCEPT_FUNCTION(gcvt); INTERCEPT_FUNCTION(strcat); // NOLINT Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.cc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.cc Mon May 22 21:17:44 2017 (r318681) @@ -285,9 +285,9 @@ void LoadedModule::clear() { } void LoadedModule::addAddressRange(uptr beg, uptr end, bool executable, - bool readable) { + bool writable) { void *mem = InternalAlloc(sizeof(AddressRange)); - AddressRange *r = new(mem) AddressRange(beg, end, executable, readable); + AddressRange *r = new(mem) AddressRange(beg, end, executable, writable); ranges_.push_back(r); if (executable && end > max_executable_address_) max_executable_address_ = end; Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.h ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common.h Mon May 22 21:17:44 2017 (r318681) @@ -717,7 +717,7 @@ class LoadedModule { void set(const char *module_name, uptr base_address, ModuleArch arch, u8 uuid[kModuleUUIDSize], bool instrumented); void clear(); - void addAddressRange(uptr beg, uptr end, bool executable, bool readable); + void addAddressRange(uptr beg, uptr end, bool executable, bool writable); bool containsAddress(uptr address) const; const char *full_name() const { return full_name_; } @@ -732,14 +732,14 @@ class LoadedModule { uptr beg; uptr end; bool executable; - bool readable; + bool writable; - AddressRange(uptr beg, uptr end, bool executable, bool readable) + AddressRange(uptr beg, uptr end, bool executable, bool writable) : next(nullptr), beg(beg), end(end), executable(executable), - readable(readable) {} + writable(writable) {} }; const IntrusiveList &ranges() const { return ranges_; } Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc Mon May 22 21:17:44 2017 (r318681) @@ -34,8 +34,6 @@ // COMMON_INTERCEPTOR_MEMSET_IMPL // COMMON_INTERCEPTOR_MEMMOVE_IMPL // COMMON_INTERCEPTOR_MEMCPY_IMPL -// COMMON_INTERCEPTOR_COPY_STRING -// COMMON_INTERCEPTOR_STRNDUP_IMPL //===----------------------------------------------------------------------===// #include "interception/interception.h" @@ -219,25 +217,6 @@ bool PlatformHasDifferentMemcpyAndMemmov } #endif -#ifndef COMMON_INTERCEPTOR_COPY_STRING -#define COMMON_INTERCEPTOR_COPY_STRING(ctx, to, from, size) {} -#endif - -#ifndef COMMON_INTERCEPTOR_STRNDUP_IMPL -#define COMMON_INTERCEPTOR_STRNDUP_IMPL(ctx, s, size) \ - COMMON_INTERCEPTOR_ENTER(ctx, strndup, s, size); \ - uptr from_length = internal_strnlen(s, size); \ - uptr copy_length = Min(size, from_length); \ - char *new_mem = (char *)WRAP(malloc)(copy_length + 1); \ - if (common_flags()->intercept_strndup) { \ - COMMON_INTERCEPTOR_READ_RANGE(ctx, s, copy_length + 1); \ - } \ - COMMON_INTERCEPTOR_COPY_STRING(ctx, new_mem, s, copy_length); \ - internal_memcpy(new_mem, s, copy_length); \ - new_mem[copy_length] = '\0'; \ - return new_mem; -#endif - struct FileMetadata { // For open_memstream(). char **addr; @@ -321,26 +300,6 @@ INTERCEPTOR(SIZE_T, strnlen, const char #define INIT_STRNLEN #endif -#if SANITIZER_INTERCEPT_STRNDUP -INTERCEPTOR(char*, strndup, const char *s, uptr size) { - void *ctx; - COMMON_INTERCEPTOR_STRNDUP_IMPL(ctx, s, size); -} -#define INIT_STRNDUP COMMON_INTERCEPT_FUNCTION(strndup) -#else -#define INIT_STRNDUP -#endif // SANITIZER_INTERCEPT_STRNDUP - -#if SANITIZER_INTERCEPT___STRNDUP -INTERCEPTOR(char*, __strndup, const char *s, uptr size) { - void *ctx; - COMMON_INTERCEPTOR_STRNDUP_IMPL(ctx, s, size); -} -#define INIT___STRNDUP COMMON_INTERCEPT_FUNCTION(__strndup) -#else -#define INIT___STRNDUP -#endif // SANITIZER_INTERCEPT___STRNDUP - #if SANITIZER_INTERCEPT_TEXTDOMAIN INTERCEPTOR(char*, textdomain, const char *domainname) { void *ctx; @@ -6204,8 +6163,6 @@ static void InitializeCommonInterceptors INIT_TEXTDOMAIN; INIT_STRLEN; INIT_STRNLEN; - INIT_STRNDUP; - INIT___STRNDUP; INIT_STRCMP; INIT_STRNCMP; INIT_STRCASECMP; Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flag_parser.h ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flag_parser.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flag_parser.h Mon May 22 21:17:44 2017 (r318681) @@ -34,25 +34,41 @@ class FlagHandler : public FlagHandlerBa bool Parse(const char *value) final; }; -template <> -inline bool FlagHandler::Parse(const char *value) { +inline bool ParseBool(const char *value, bool *b) { if (internal_strcmp(value, "0") == 0 || internal_strcmp(value, "no") == 0 || internal_strcmp(value, "false") == 0) { - *t_ = false; + *b = false; return true; } if (internal_strcmp(value, "1") == 0 || internal_strcmp(value, "yes") == 0 || internal_strcmp(value, "true") == 0) { - *t_ = true; + *b = true; return true; } + return false; +} + +template <> +inline bool FlagHandler::Parse(const char *value) { + if (ParseBool(value, t_)) return true; Printf("ERROR: Invalid value for bool option: '%s'\n", value); return false; } template <> +inline bool FlagHandler::Parse(const char *value) { + bool b; + if (ParseBool(value, &b)) { + *t_ = b ? kHandleSignalYes : kHandleSignalNo; + return true; + } + Printf("ERROR: Invalid value for signal handler option: '%s'\n", value); + return false; +} + +template <> inline bool FlagHandler::Parse(const char *value) { *t_ = internal_strdup(value); return true; Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.h ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.h Mon May 22 21:17:44 2017 (r318681) @@ -18,6 +18,11 @@ namespace __sanitizer { +enum HandleSignalMode { + kHandleSignalNo, + kHandleSignalYes, +}; + struct CommonFlags { #define COMMON_FLAG(Type, Name, DefaultValue, Description) Type Name; #include "sanitizer_flags.inc" Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.inc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.inc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_flags.inc Mon May 22 21:17:44 2017 (r318681) @@ -78,16 +78,20 @@ COMMON_FLAG(int, print_module_map, 0, "OS X only. 0 = don't print, 1 = print only once before process " "exits, 2 = print after each report.") COMMON_FLAG(bool, check_printf, true, "Check printf arguments.") -COMMON_FLAG(bool, handle_segv, true, - "If set, registers the tool's custom SIGSEGV handler.") -COMMON_FLAG(bool, handle_sigbus, true, - "If set, registers the tool's custom SIGBUS handler.") -COMMON_FLAG(bool, handle_abort, false, - "If set, registers the tool's custom SIGABRT handler.") -COMMON_FLAG(bool, handle_sigill, false, - "If set, registers the tool's custom SIGILL handler.") -COMMON_FLAG(bool, handle_sigfpe, true, - "If set, registers the tool's custom SIGFPE handler.") +#define COMMON_FLAG_HANDLE_SIGNAL_HELP(signal) \ + "Controls custom tool's " #signal " handler (0 - do not registers the " \ + "handler, 1 - register the handler). " +COMMON_FLAG(HandleSignalMode, handle_segv, kHandleSignalYes, + COMMON_FLAG_HANDLE_SIGNAL_HELP(SIGSEGV)) +COMMON_FLAG(HandleSignalMode, handle_sigbus, kHandleSignalYes, + COMMON_FLAG_HANDLE_SIGNAL_HELP(SIGBUS)) +COMMON_FLAG(HandleSignalMode, handle_abort, kHandleSignalNo, + COMMON_FLAG_HANDLE_SIGNAL_HELP(SIGABRT)) +COMMON_FLAG(HandleSignalMode, handle_sigill, kHandleSignalNo, + COMMON_FLAG_HANDLE_SIGNAL_HELP(SIGILL)) +COMMON_FLAG(HandleSignalMode, handle_sigfpe, kHandleSignalYes, + COMMON_FLAG_HANDLE_SIGNAL_HELP(SIGFPE)) +#undef COMMON_FLAG_HANDLE_SIGNAL_HELP COMMON_FLAG(bool, allow_user_segv_handler, false, "If set, allows user to register a SEGV handler even if the tool " "registers one.") @@ -195,9 +199,6 @@ COMMON_FLAG(bool, intercept_strpbrk, tru COMMON_FLAG(bool, intercept_strlen, true, "If set, uses custom wrappers for strlen and strnlen functions " "to find more errors.") -COMMON_FLAG(bool, intercept_strndup, true, - "If set, uses custom wrappers for strndup functions " - "to find more errors.") COMMON_FLAG(bool, intercept_strchr, true, "If set, uses custom wrappers for strchr, strchrnul, and strrchr " "functions to find more errors.") Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc Mon May 22 21:17:44 2017 (r318681) @@ -1395,15 +1395,19 @@ AndroidApiLevel AndroidGetApiLevel() { #endif bool IsHandledDeadlySignal(int signum) { - if (common_flags()->handle_abort && signum == SIGABRT) - return true; - if (common_flags()->handle_sigill && signum == SIGILL) - return true; - if (common_flags()->handle_sigfpe && signum == SIGFPE) - return true; - if (common_flags()->handle_segv && signum == SIGSEGV) - return true; - return common_flags()->handle_sigbus && signum == SIGBUS; + switch (signum) { + case SIGABRT: + return common_flags()->handle_abort; + case SIGILL: + return common_flags()->handle_sigill; + case SIGFPE: + return common_flags()->handle_sigfpe; + case SIGSEGV: + return common_flags()->handle_segv; + case SIGBUS: + return common_flags()->handle_sigbus; + } + return false; } #if !SANITIZER_GO Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cc Mon May 22 21:17:44 2017 (r318681) @@ -447,9 +447,9 @@ static int dl_iterate_phdr_cb(dl_phdr_in uptr cur_beg = info->dlpi_addr + phdr->p_vaddr; uptr cur_end = cur_beg + phdr->p_memsz; bool executable = phdr->p_flags & PF_X; - bool readable = phdr->p_flags & PF_R; + bool writable = phdr->p_flags & PF_W; cur_module.addAddressRange(cur_beg, cur_end, executable, - readable); + writable); } } data->modules->push_back(cur_module); Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_mac.cc Mon May 22 21:17:44 2017 (r318681) @@ -394,18 +394,22 @@ void ListOfModules::init() { } bool IsHandledDeadlySignal(int signum) { + // Handling fatal signals on watchOS and tvOS devices is disallowed. if ((SANITIZER_WATCHOS || SANITIZER_TVOS) && !(SANITIZER_IOSSIM)) - // Handling fatal signals on watchOS and tvOS devices is disallowed. return false; - if (common_flags()->handle_abort && signum == SIGABRT) - return true; - if (common_flags()->handle_sigill && signum == SIGILL) - return true; - if (common_flags()->handle_sigfpe && signum == SIGFPE) - return true; - if (common_flags()->handle_segv && signum == SIGSEGV) - return true; - return common_flags()->handle_sigbus && signum == SIGBUS; + switch (signum) { + case SIGABRT: + return common_flags()->handle_abort; + case SIGILL: + return common_flags()->handle_sigill; + case SIGFPE: + return common_flags()->handle_sigfpe; + case SIGSEGV: + return common_flags()->handle_segv; + case SIGBUS: + return common_flags()->handle_sigbus; + } + return false; } MacosVersion cached_macos_version = MACOS_VERSION_UNINITIALIZED; Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h Mon May 22 21:17:44 2017 (r318681) @@ -25,12 +25,6 @@ # define SI_NOT_WINDOWS 0 #endif -#if SANITIZER_POSIX -# define SI_POSIX 1 -#else -# define SI_POSIX 0 -#endif - #if SANITIZER_LINUX && !SANITIZER_ANDROID # define SI_LINUX_NOT_ANDROID 1 #else @@ -75,12 +69,6 @@ # define SI_UNIX_NOT_MAC 0 #endif -#if SANITIZER_LINUX && !SANITIZER_FREEBSD -# define SI_LINUX_NOT_FREEBSD 1 -# else -# define SI_LINUX_NOT_FREEBSD 0 -#endif - #define SANITIZER_INTERCEPT_STRLEN 1 #define SANITIZER_INTERCEPT_STRNLEN SI_NOT_MAC #define SANITIZER_INTERCEPT_STRCMP 1 @@ -98,8 +86,6 @@ #define SANITIZER_INTERCEPT_MEMMOVE 1 #define SANITIZER_INTERCEPT_MEMCPY 1 #define SANITIZER_INTERCEPT_MEMCMP 1 -#define SANITIZER_INTERCEPT_STRNDUP SI_POSIX -#define SANITIZER_INTERCEPT___STRNDUP SI_LINUX_NOT_FREEBSD #if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && \ __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ < 1070 # define SI_MAC_DEPLOYMENT_BELOW_10_7 1 Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_common.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_common.cc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_common.cc Mon May 22 21:17:44 2017 (r318681) @@ -142,7 +142,7 @@ void MemoryMappingLayout::DumpListOfModu LoadedModule cur_module; cur_module.set(cur_name, base_address); cur_module.addAddressRange(cur_beg, cur_end, prot & kProtectionExecute, - prot & kProtectionRead); + prot & kProtectionWrite); modules->push_back(cur_module); } } Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_mac.cc Mon May 22 21:17:44 2017 (r318681) @@ -336,7 +336,7 @@ void MemoryMappingLayout::DumpListOfModu current_instrumented_); } cur_module->addAddressRange(cur_beg, cur_end, prot & kProtectionExecute, - prot & kProtectionRead); + prot & kProtectionWrite); } } Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win.cc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_win.cc Mon May 22 21:17:44 2017 (r318681) @@ -554,7 +554,7 @@ void ListOfModules::init() { cur_module.set(module_name, adjusted_base); // We add the whole module as one single address range. cur_module.addAddressRange(base_address, end_address, /*executable*/ true, - /*readable*/ true); + /*writable*/ true); modules_.push_back(cur_module); } UnmapOrDie(hmodules, modules_buffer_size); Modified: projects/clang500-import/contrib/compiler-rt/lib/scudo/scudo_flags.cpp ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/scudo/scudo_flags.cpp Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/scudo/scudo_flags.cpp Mon May 22 21:17:44 2017 (r318681) @@ -68,7 +68,7 @@ void initFlags() { // Sanity checks and default settings for the Quarantine parameters. if (f->QuarantineSizeMb < 0) { - const int DefaultQuarantineSizeMb = FIRST_32_SECOND_64(16, 64); + const int DefaultQuarantineSizeMb = FIRST_32_SECOND_64(4, 16); f->QuarantineSizeMb = DefaultQuarantineSizeMb; } // We enforce an upper limit for the quarantine size of 4Gb. @@ -77,7 +77,7 @@ void initFlags() { } if (f->ThreadLocalQuarantineSizeKb < 0) { const int DefaultThreadLocalQuarantineSizeKb = - FIRST_32_SECOND_64(256, 1024); + FIRST_32_SECOND_64(64, 256); f->ThreadLocalQuarantineSizeKb = DefaultThreadLocalQuarantineSizeKb; } // And an upper limit of 128Mb for the thread quarantine cache. Modified: projects/clang500-import/contrib/compiler-rt/lib/xray/xray_interface.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/xray/xray_interface.cc Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/compiler-rt/lib/xray/xray_interface.cc Mon May 22 21:17:44 2017 (r318681) @@ -119,10 +119,15 @@ int __xray_set_customevent_handler(void return 0; } + int __xray_remove_handler() XRAY_NEVER_INSTRUMENT { return __xray_set_handler(nullptr); } +int __xray_remove_customevent_handler() XRAY_NEVER_INSTRUMENT { + return __xray_set_customevent_handler(nullptr); +} + __sanitizer::atomic_uint8_t XRayPatching{0}; using namespace __xray; @@ -326,7 +331,14 @@ uintptr_t __xray_function_address(int32_ __sanitizer::SpinMutexLock Guard(&XRayInstrMapMutex); if (FuncId <= 0 || static_cast(FuncId) > XRayInstrMap.Functions) return 0; - return XRayInstrMap.SledsIndex[FuncId - 1].Begin->Address; + return XRayInstrMap.SledsIndex[FuncId - 1].Begin->Address +// On PPC, function entries are always aligned to 16 bytes. The beginning of a +// sled might be a local entry, which is always +8 based on the global entry. +// Always return the global entry. +#ifdef __PPC__ + & ~0xf +#endif + ; } size_t __xray_max_function_id() XRAY_NEVER_INSTRUMENT { Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/APInt.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/APInt.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/APInt.h Mon May 22 21:17:44 2017 (r318681) @@ -182,8 +182,9 @@ private: /// provides a more convenient form of divide for internal use since KnuthDiv /// has specific constraints on its inputs. If those constraints are not met /// then it provides a simpler form of divide. - static void divide(const APInt &LHS, unsigned lhsWords, const APInt &RHS, - unsigned rhsWords, APInt *Quotient, APInt *Remainder); + static void divide(const WordType *LHS, unsigned lhsWords, + const WordType *RHS, unsigned rhsWords, WordType *Quotient, + WordType *Remainder); /// out-of-line slow case for inline constructor void initSlowCase(uint64_t val, bool isSigned); @@ -1016,11 +1017,13 @@ public: /// /// \returns a new APInt value containing the division result APInt udiv(const APInt &RHS) const; + APInt udiv(uint64_t RHS) const; /// \brief Signed division function for APInt. /// /// Signed divide this APInt by APInt RHS. APInt sdiv(const APInt &RHS) const; + APInt sdiv(int64_t RHS) const; /// \brief Unsigned remainder operation. /// @@ -1032,11 +1035,13 @@ public: /// /// \returns a new APInt value containing the remainder result APInt urem(const APInt &RHS) const; + uint64_t urem(uint64_t RHS) const; /// \brief Function for signed remainder operation. /// /// Signed remainder operation on APInt. APInt srem(const APInt &RHS) const; + int64_t srem(int64_t RHS) const; /// \brief Dual division/remainder interface. /// @@ -1047,9 +1052,13 @@ public: /// udivrem(X, Y, X, Y), for example. static void udivrem(const APInt &LHS, const APInt &RHS, APInt &Quotient, APInt &Remainder); + static void udivrem(const APInt &LHS, uint64_t RHS, APInt &Quotient, + uint64_t &Remainder); static void sdivrem(const APInt &LHS, const APInt &RHS, APInt &Quotient, APInt &Remainder); + static void sdivrem(const APInt &LHS, int64_t RHS, APInt &Quotient, + int64_t &Remainder); // Operations that return overflow indicators. APInt sadd_ov(const APInt &RHS, bool &Overflow) const; @@ -2015,7 +2024,7 @@ inline APInt operator-(APInt a, const AP } inline APInt operator-(const APInt &a, APInt &&b) { - b = -std::move(b); + b.negate(); b += a; return std::move(b); } @@ -2026,7 +2035,7 @@ inline APInt operator-(APInt a, uint64_t } inline APInt operator-(uint64_t LHS, APInt b) { - b = -std::move(b); + b.negate(); b += LHS; return b; } Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallPtrSet.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallPtrSet.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/SmallPtrSet.h Mon May 22 21:17:44 2017 (r318681) @@ -365,6 +365,8 @@ protected: public: using iterator = SmallPtrSetIterator; using const_iterator = SmallPtrSetIterator; + using key_type = ConstPtrType; + using value_type = PtrType; SmallPtrSetImpl(const SmallPtrSetImpl &) = delete; Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/Statistic.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/Statistic.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/Statistic.h Mon May 22 21:17:44 2017 (r318681) @@ -101,6 +101,16 @@ public: return init(); } + void updateMax(unsigned V) { + unsigned PrevMax = Value.load(std::memory_order_relaxed); + // Keep trying to update max until we succeed or another thread produces + // a bigger max than us. + while (V > PrevMax && !Value.compare_exchange_weak( + PrevMax, V, std::memory_order_relaxed)) { + } + init(); + } + #else // Statistics are disabled in release builds. const Statistic &operator=(unsigned Val) { @@ -131,6 +141,8 @@ public: return *this; } + void updateMax(unsigned V) {} + #endif // !defined(NDEBUG) || defined(LLVM_ENABLE_STATS) protected: Modified: projects/clang500-import/contrib/llvm/include/llvm/ADT/Triple.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/ADT/Triple.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/llvm/include/llvm/ADT/Triple.h Mon May 22 21:17:44 2017 (r318681) @@ -252,6 +252,10 @@ public: ObjectFormat == Other.ObjectFormat; } + bool operator!=(const Triple &Other) const { + return !(*this == Other); + } + /// @} /// @name Normalization /// @{ @@ -722,6 +726,12 @@ public: /// \returns true if the triple is little endian, false otherwise. bool isLittleEndian() const; + /// Test whether target triples are compatible. + bool isCompatibleWith(const Triple &Other) const; + + /// Merge target triples. + std::string merge(const Triple &Other) const; + /// @} /// @name Static helpers for IDs. /// @{ Modified: projects/clang500-import/contrib/llvm/include/llvm/Analysis/MemorySSA.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/Analysis/MemorySSA.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/llvm/include/llvm/Analysis/MemorySSA.h Mon May 22 21:17:44 2017 (r318681) @@ -84,6 +84,7 @@ #include "llvm/Analysis/MemoryLocation.h" #include "llvm/Analysis/PHITransAddr.h" #include "llvm/IR/BasicBlock.h" +#include "llvm/IR/DerivedUser.h" #include "llvm/IR/Dominators.h" #include "llvm/IR/Module.h" #include "llvm/IR/OperandTraits.h" @@ -127,7 +128,7 @@ using const_memoryaccess_def_iterator = // \brief The base for all memory accesses. All memory accesses in a block are // linked together using an intrusive list. class MemoryAccess - : public User, + : public DerivedUser, public ilist_node>, public ilist_node> { public: @@ -145,15 +146,14 @@ public: MemoryAccess(const MemoryAccess &) = delete; MemoryAccess &operator=(const MemoryAccess &) = delete; - ~MemoryAccess() override; void *operator new(size_t, unsigned) = delete; void *operator new(size_t) = delete; BasicBlock *getBlock() const { return Block; } - virtual void print(raw_ostream &OS) const = 0; - virtual void dump() const; + void print(raw_ostream &OS) const; + void dump() const; /// \brief The user iterators for a memory access typedef user_iterator iterator; @@ -207,11 +207,12 @@ protected: /// \brief Used for debugging and tracking things about MemoryAccesses. /// Guaranteed unique among MemoryAccesses, no guarantees otherwise. - virtual unsigned getID() const = 0; + inline unsigned getID() const; - MemoryAccess(LLVMContext &C, unsigned Vty, BasicBlock *BB, - unsigned NumOperands) - : User(Type::getVoidTy(C), Vty, nullptr, NumOperands), Block(BB) {} + MemoryAccess(LLVMContext &C, unsigned Vty, DeleteValueTy DeleteValue, + BasicBlock *BB, unsigned NumOperands) + : DerivedUser(Type::getVoidTy(C), Vty, nullptr, NumOperands, DeleteValue), + Block(BB) {} private: BasicBlock *Block; @@ -248,21 +249,21 @@ public: // Sadly, these have to be public because they are needed in some of the // iterators. - virtual bool isOptimized() const = 0; - virtual MemoryAccess *getOptimized() const = 0; - virtual void setOptimized(MemoryAccess *) = 0; + inline bool isOptimized() const; + inline MemoryAccess *getOptimized() const; + inline void setOptimized(MemoryAccess *); /// \brief Reset the ID of what this MemoryUse was optimized to, causing it to /// be rewalked by the walker if necessary. /// This really should only be called by tests. - virtual void resetOptimized() = 0; + inline void resetOptimized(); protected: friend class MemorySSA; friend class MemorySSAUpdater; MemoryUseOrDef(LLVMContext &C, MemoryAccess *DMA, unsigned Vty, - Instruction *MI, BasicBlock *BB) - : MemoryAccess(C, Vty, BB, 1), MemoryInst(MI) { + DeleteValueTy DeleteValue, Instruction *MI, BasicBlock *BB) + : MemoryAccess(C, Vty, DeleteValue, BB, 1), MemoryInst(MI) { setDefiningAccess(DMA); } void setDefiningAccess(MemoryAccess *DMA, bool Optimized = false) { @@ -292,7 +293,8 @@ public: DECLARE_TRANSPARENT_OPERAND_ACCESSORS(MemoryAccess); MemoryUse(LLVMContext &C, MemoryAccess *DMA, Instruction *MI, BasicBlock *BB) - : MemoryUseOrDef(C, DMA, MemoryUseVal, MI, BB), OptimizedID(0) {} + : MemoryUseOrDef(C, DMA, MemoryUseVal, deleteMe, MI, BB), + OptimizedID(0) {} // allocate space for exactly one operand void *operator new(size_t s) { return User::operator new(s, 1); } @@ -302,32 +304,30 @@ public: return MA->getValueID() == MemoryUseVal; } - void print(raw_ostream &OS) const override; + void print(raw_ostream &OS) const; - virtual void setOptimized(MemoryAccess *DMA) override { + void setOptimized(MemoryAccess *DMA) { OptimizedID = DMA->getID(); setOperand(0, DMA); } - virtual bool isOptimized() const override { + bool isOptimized() const { return getDefiningAccess() && OptimizedID == getDefiningAccess()->getID(); } - virtual MemoryAccess *getOptimized() const override { + MemoryAccess *getOptimized() const { return getDefiningAccess(); } - virtual void resetOptimized() override { + void resetOptimized() { OptimizedID = INVALID_MEMORYACCESS_ID; } protected: friend class MemorySSA; - unsigned getID() const override { - llvm_unreachable("MemoryUses do not have IDs"); - } - private: + static void deleteMe(DerivedUser *Self); + unsigned int OptimizedID; }; @@ -350,8 +350,8 @@ public: MemoryDef(LLVMContext &C, MemoryAccess *DMA, Instruction *MI, BasicBlock *BB, unsigned Ver) - : MemoryUseOrDef(C, DMA, MemoryDefVal, MI, BB), ID(Ver), - Optimized(nullptr), OptimizedID(INVALID_MEMORYACCESS_ID) {} + : MemoryUseOrDef(C, DMA, MemoryDefVal, deleteMe, MI, BB), + ID(Ver), Optimized(nullptr), OptimizedID(INVALID_MEMORYACCESS_ID) {} // allocate space for exactly one operand void *operator new(size_t s) { return User::operator new(s, 1); } @@ -361,27 +361,28 @@ public: return MA->getValueID() == MemoryDefVal; } - virtual void setOptimized(MemoryAccess *MA) override { + void setOptimized(MemoryAccess *MA) { Optimized = MA; OptimizedID = getDefiningAccess()->getID(); } - virtual MemoryAccess *getOptimized() const override { return Optimized; } - virtual bool isOptimized() const override { + MemoryAccess *getOptimized() const { return Optimized; } + bool isOptimized() const { return getOptimized() && getDefiningAccess() && OptimizedID == getDefiningAccess()->getID(); } - virtual void resetOptimized() override { + void resetOptimized() { OptimizedID = INVALID_MEMORYACCESS_ID; } - void print(raw_ostream &OS) const override; + void print(raw_ostream &OS) const; -protected: friend class MemorySSA; - unsigned getID() const override { return ID; } + unsigned getID() const { return ID; } private: + static void deleteMe(DerivedUser *Self); + const unsigned ID; MemoryAccess *Optimized; unsigned int OptimizedID; @@ -432,7 +433,8 @@ public: DECLARE_TRANSPARENT_OPERAND_ACCESSORS(MemoryAccess); MemoryPhi(LLVMContext &C, BasicBlock *BB, unsigned Ver, unsigned NumPreds = 0) - : MemoryAccess(C, MemoryPhiVal, BB, 0), ID(Ver), ReservedSpace(NumPreds) { + : MemoryAccess(C, MemoryPhiVal, deleteMe, BB, 0), ID(Ver), + ReservedSpace(NumPreds) { allocHungoffUses(ReservedSpace); } @@ -534,7 +536,9 @@ public: return V->getValueID() == MemoryPhiVal; } - void print(raw_ostream &OS) const override; + void print(raw_ostream &OS) const; + + unsigned getID() const { return ID; } protected: friend class MemorySSA; @@ -546,8 +550,6 @@ protected: User::allocHungoffUses(N, /* IsPhi */ true); } - unsigned getID() const final { return ID; } - private: // For debugging only const unsigned ID; @@ -561,8 +563,45 @@ private: ReservedSpace = std::max(E + E / 2, 2u); growHungoffUses(ReservedSpace, /* IsPhi */ true); } + + static void deleteMe(DerivedUser *Self); }; +inline unsigned MemoryAccess::getID() const { + assert((isa(this) || isa(this)) && + "only memory defs and phis have ids"); + if (const auto *MD = dyn_cast(this)) + return MD->getID(); + return cast(this)->getID(); +} + +inline bool MemoryUseOrDef::isOptimized() const { + if (const auto *MD = dyn_cast(this)) + return MD->isOptimized(); + return cast(this)->isOptimized(); +} + +inline MemoryAccess *MemoryUseOrDef::getOptimized() const { + if (const auto *MD = dyn_cast(this)) + return MD->getOptimized(); + return cast(this)->getOptimized(); +} + +inline void MemoryUseOrDef::setOptimized(MemoryAccess *MA) { + if (auto *MD = dyn_cast(this)) + MD->setOptimized(MA); + else + cast(this)->setOptimized(MA); +} + +inline void MemoryUseOrDef::resetOptimized() { + if (auto *MD = dyn_cast(this)) + MD->resetOptimized(); + else + cast(this)->resetOptimized(); +} + + template <> struct OperandTraits : public HungoffOperandTraits<2> {}; DEFINE_TRANSPARENT_OPERAND_ACCESSORS(MemoryPhi, MemoryAccess) Modified: projects/clang500-import/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h Mon May 22 21:17:44 2017 (r318681) @@ -656,10 +656,12 @@ private: /// Test whether this BackedgeTakenInfo contains complete information. bool hasFullInfo() const { return isComplete(); } - /// Return an expression indicating the exact backedge-taken count of the - /// loop if it is known or SCEVCouldNotCompute otherwise. This is the - /// number of times the loop header can be guaranteed to execute, minus - /// one. + /// Return an expression indicating the exact *backedge-taken* + /// count of the loop if it is known or SCEVCouldNotCompute + /// otherwise. If execution makes it to the backedge on every + /// iteration (i.e. there are no abnormal exists like exception + /// throws and thread exits) then this is the number of times the + /// loop header will execute minus one. /// /// If the SCEV predicate associated with the answer can be different /// from AlwaysTrue, we must add a (non null) Predicates argument. @@ -1398,11 +1400,11 @@ public: const SCEV *getExitCount(const Loop *L, BasicBlock *ExitingBlock); /// If the specified loop has a predictable backedge-taken count, return it, - /// otherwise return a SCEVCouldNotCompute object. The backedge-taken count - /// is the number of times the loop header will be branched to from within - /// the loop. This is one less than the trip count of the loop, since it - /// doesn't count the first iteration, when the header is branched to from - /// outside the loop. + /// otherwise return a SCEVCouldNotCompute object. The backedge-taken count is + /// the number of times the loop header will be branched to from within the + /// loop, assuming there are no abnormal exists like exception throws. This is + /// one less than the trip count of the loop, since it doesn't count the first + /// iteration, when the header is branched to from outside the loop. /// /// Note that it is not valid to call this method on a loop without a /// loop-invariant backedge-taken count (see @@ -1417,8 +1419,10 @@ public: const SCEV *getPredicatedBackedgeTakenCount(const Loop *L, SCEVUnionPredicate &Predicates); - /// Similar to getBackedgeTakenCount, except return the least SCEV value - /// that is known never to be less than the actual backedge taken count. + /// When successful, this returns a SCEVConstant that is greater than or equal + /// to (i.e. a "conservative over-approximation") of the value returend by + /// getBackedgeTakenCount. If such a value cannot be computed, it returns the + /// SCEVCouldNotCompute object. const SCEV *getMaxBackedgeTakenCount(const Loop *L); /// Return true if the backedge taken count is either the value returned by Modified: projects/clang500-import/contrib/llvm/include/llvm/Analysis/TargetLibraryInfo.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/Analysis/TargetLibraryInfo.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/llvm/include/llvm/Analysis/TargetLibraryInfo.h Mon May 22 21:17:44 2017 (r318681) @@ -191,6 +191,14 @@ public: void setShouldSignExtI32Param(bool Val) { ShouldSignExtI32Param = Val; } + + /// Returns the size of the wchar_t type in bytes. + unsigned getWCharSize(const Module &M) const; + + /// Returns size of the default wchar_t type on target \p T. This is mostly + /// intended to verify that the size in the frontend matches LLVM. All other + /// queries should use getWCharSize() instead. + static unsigned getTargetWCharSize(const Triple &T); }; /// Provides information about what library functions are available for @@ -307,6 +315,11 @@ public: return Attribute::None; } + /// \copydoc TargetLibraryInfoImpl::getWCharSize() + unsigned getWCharSize(const Module &M) const { + return Impl->getWCharSize(M); + } + /// Handle invalidation from the pass manager. /// /// If we try to invalidate this info, just return false. It cannot become Modified: projects/clang500-import/contrib/llvm/include/llvm/Analysis/ValueTracking.h ============================================================================== --- projects/clang500-import/contrib/llvm/include/llvm/Analysis/ValueTracking.h Mon May 22 20:34:51 2017 (r318680) +++ projects/clang500-import/contrib/llvm/include/llvm/Analysis/ValueTracking.h Mon May 22 21:17:44 2017 (r318681) @@ -218,9 +218,38 @@ template class ArrayRef; DL); } *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Thu May 25 17:38:21 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 69BBCD81B18 for ; Thu, 25 May 2017 17:38:21 +0000 (UTC) (envelope-from bapt@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 2065412B8; Thu, 25 May 2017 17:38:21 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v4PHcKCY032826; Thu, 25 May 2017 17:38:20 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v4PHcKNx032825; Thu, 25 May 2017 17:38:20 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201705251738.v4PHcKNx032825@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Thu, 25 May 2017 17:38:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r318887 - projects/doctools 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, 25 May 2017 17:38:21 -0000 Author: bapt Date: Thu May 25 17:38:19 2017 New Revision: 318887 URL: https://svnweb.freebsd.org/changeset/base/318887 Log: Abandon the doctools project The new plan is to totally remove the roff toolchain from base as there are too many corner cases to switch the roff toolchain Deleted: projects/doctools/ From owner-svn-src-projects@freebsd.org Fri May 26 19:11:30 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 814C8D83D3B for ; Fri, 26 May 2017 19:11:30 +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 D3EA31600; Fri, 26 May 2017 19:11:29 +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 v4QJBTEQ068569; Fri, 26 May 2017 19:11:29 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v4QJBPoR068532; Fri, 26 May 2017 19:11:25 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201705261911.v4QJBPoR068532@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 26 May 2017 19:11:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r318964 - in projects/clang500-import: . cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/proc cddl/contrib/opensolaris/cmd/zdb cddl/contrib/opensolaris/lib/libzfs/common cddl/contri... 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, 26 May 2017 19:11:30 -0000 Author: dim Date: Fri May 26 19:11:24 2017 New Revision: 318964 URL: https://svnweb.freebsd.org/changeset/base/318964 Log: Merge ^/head r318658 through r318963. Added: projects/clang500-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/proc/tst.exitcore.c - copied unchanged from r318963, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/proc/tst.exitcore.c projects/clang500-import/contrib/binutils/ld/emulparams/elf64_s390_fbsd.sh - copied unchanged from r318963, head/contrib/binutils/ld/emulparams/elf64_s390_fbsd.sh projects/clang500-import/contrib/binutils/ld/emulparams/elf_s390_fbsd.sh - copied unchanged from r318963, head/contrib/binutils/ld/emulparams/elf_s390_fbsd.sh projects/clang500-import/contrib/gcc/config/s390/freebsd.h - copied unchanged from r318963, head/contrib/gcc/config/s390/freebsd.h projects/clang500-import/crypto/openssl/doc/man3/ - copied from r318963, head/crypto/openssl/doc/man3/ projects/clang500-import/lib/libc/gen/devname-compat11.c - copied unchanged from r318963, head/lib/libc/gen/devname-compat11.c projects/clang500-import/lib/libc/gen/fts-compat11.c - copied unchanged from r318963, head/lib/libc/gen/fts-compat11.c projects/clang500-import/lib/libc/gen/fts-compat11.h - copied unchanged from r318963, head/lib/libc/gen/fts-compat11.h projects/clang500-import/lib/libc/gen/ftw-compat11.c - copied unchanged from r318963, head/lib/libc/gen/ftw-compat11.c projects/clang500-import/lib/libc/gen/gen-compat.h - copied unchanged from r318963, head/lib/libc/gen/gen-compat.h projects/clang500-import/lib/libc/gen/getmntinfo-compat11.c - copied unchanged from r318963, head/lib/libc/gen/getmntinfo-compat11.c projects/clang500-import/lib/libc/gen/glob-compat11.c - copied unchanged from r318963, head/lib/libc/gen/glob-compat11.c projects/clang500-import/lib/libc/gen/glob-compat11.h - copied unchanged from r318963, head/lib/libc/gen/glob-compat11.h projects/clang500-import/lib/libc/gen/nftw-compat11.c - copied unchanged from r318963, head/lib/libc/gen/nftw-compat11.c projects/clang500-import/lib/libc/gen/readdir-compat11.c - copied unchanged from r318963, head/lib/libc/gen/readdir-compat11.c projects/clang500-import/lib/libc/gen/scandir-compat11.c - copied unchanged from r318963, head/lib/libc/gen/scandir-compat11.c projects/clang500-import/lib/libc/sys/getdents.c - copied unchanged from r318963, head/lib/libc/sys/getdents.c projects/clang500-import/lib/libc/sys/lstat.c - copied unchanged from r318963, head/lib/libc/sys/lstat.c projects/clang500-import/lib/libc/sys/mknod.c - copied unchanged from r318963, head/lib/libc/sys/mknod.c projects/clang500-import/lib/libc/sys/stat.c - copied unchanged from r318963, head/lib/libc/sys/stat.c projects/clang500-import/lib/libprocstat/libprocstat_compat.c - copied unchanged from r318963, head/lib/libprocstat/libprocstat_compat.c projects/clang500-import/lib/libsysdecode/sysdecode_socket_protocol.3 - copied unchanged from r318963, head/lib/libsysdecode/sysdecode_socket_protocol.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_tlsext_servername_callback.3 - copied unchanged from r318963, head/secure/lib/libssl/man/SSL_CTX_set_tlsext_servername_callback.3 projects/clang500-import/sys/arm/mv/armada/wdt.c - copied unchanged from r318963, head/sys/arm/mv/armada/wdt.c projects/clang500-import/sys/dev/ath/ah_osdep_ar5210.c - copied unchanged from r318963, head/sys/dev/ath/ah_osdep_ar5210.c projects/clang500-import/sys/dev/ath/ah_osdep_ar5211.c - copied unchanged from r318963, head/sys/dev/ath/ah_osdep_ar5211.c projects/clang500-import/sys/dev/ath/ah_osdep_ar5212.c - copied unchanged from r318963, head/sys/dev/ath/ah_osdep_ar5212.c projects/clang500-import/sys/dev/ath/ah_osdep_ar5416.c - copied unchanged from r318963, head/sys/dev/ath/ah_osdep_ar5416.c projects/clang500-import/sys/dev/ath/ah_osdep_ar9300.c - copied unchanged from r318963, head/sys/dev/ath/ah_osdep_ar9300.c projects/clang500-import/sys/dev/ath/if_ath_dfs.c - copied unchanged from r318963, head/sys/dev/ath/if_ath_dfs.c projects/clang500-import/sys/dev/ath/if_ath_drv.c - copied unchanged from r318963, head/sys/dev/ath/if_ath_drv.c projects/clang500-import/sys/dev/ath/if_ath_rate.c - copied unchanged from r318963, head/sys/dev/ath/if_ath_rate.c projects/clang500-import/sys/dev/cxgbe/firmware/t4fw-1.16.45.0.bin.uu - copied unchanged from r318963, head/sys/dev/cxgbe/firmware/t4fw-1.16.45.0.bin.uu projects/clang500-import/sys/dev/cxgbe/firmware/t5fw-1.16.45.0.bin.uu - copied unchanged from r318963, head/sys/dev/cxgbe/firmware/t5fw-1.16.45.0.bin.uu projects/clang500-import/sys/dev/cxgbe/firmware/t6fw-1.16.45.0.bin.uu - copied unchanged from r318963, head/sys/dev/cxgbe/firmware/t6fw-1.16.45.0.bin.uu projects/clang500-import/sys/mips/atheros/ar71xx_caldata.c - copied unchanged from r318963, head/sys/mips/atheros/ar71xx_caldata.c projects/clang500-import/sys/modules/ath_dfs/ - copied from r318963, head/sys/modules/ath_dfs/ projects/clang500-import/sys/modules/ath_hal/ - copied from r318963, head/sys/modules/ath_hal/ projects/clang500-import/sys/modules/ath_hal_ar5210/ - copied from r318963, head/sys/modules/ath_hal_ar5210/ projects/clang500-import/sys/modules/ath_hal_ar5211/ - copied from r318963, head/sys/modules/ath_hal_ar5211/ projects/clang500-import/sys/modules/ath_hal_ar5212/ - copied from r318963, head/sys/modules/ath_hal_ar5212/ projects/clang500-import/sys/modules/ath_hal_ar5416/ - copied from r318963, head/sys/modules/ath_hal_ar5416/ projects/clang500-import/sys/modules/ath_hal_ar9300/ - copied from r318963, head/sys/modules/ath_hal_ar9300/ projects/clang500-import/sys/modules/ath_main/ - copied from r318963, head/sys/modules/ath_main/ projects/clang500-import/sys/modules/ath_rate/ - copied from r318963, head/sys/modules/ath_rate/ projects/clang500-import/usr.bin/diff3/ - copied from r318963, head/usr.bin/diff3/ Deleted: projects/clang500-import/share/misc/man.template projects/clang500-import/sys/dev/cxgbe/firmware/t4fw-1.16.26.0.bin.uu projects/clang500-import/sys/dev/cxgbe/firmware/t5fw-1.16.26.0.bin.uu projects/clang500-import/sys/dev/cxgbe/firmware/t6fw-1.16.26.0.bin.uu Modified: projects/clang500-import/Makefile.inc1 projects/clang500-import/ObsoleteFiles.inc projects/clang500-import/UPDATING projects/clang500-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/proc/tst.exitcore.ksh projects/clang500-import/cddl/contrib/opensolaris/cmd/zdb/zdb.c projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_impl.h projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_import.c projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs_core/common/libzfs_core.c projects/clang500-import/cddl/lib/libzfs/Makefile projects/clang500-import/cddl/usr.sbin/dtrace/tests/common/proc/Makefile projects/clang500-import/contrib/binutils/bfd/config.bfd projects/clang500-import/contrib/binutils/ld/configure.tgt projects/clang500-import/contrib/blacklist/bin/blacklistd.c projects/clang500-import/contrib/blacklist/include/bl.h projects/clang500-import/contrib/blacklist/include/blacklist.h projects/clang500-import/contrib/blacklist/lib/blacklist.c projects/clang500-import/contrib/blacklist/lib/libblacklist.3 projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h projects/clang500-import/contrib/gcc/config.gcc projects/clang500-import/contrib/libc-vis/vis.3 projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh projects/clang500-import/contrib/openbsm/libbsm/bsm_wrappers.c projects/clang500-import/crypto/openssl/CHANGES projects/clang500-import/crypto/openssl/Configure projects/clang500-import/crypto/openssl/LICENSE projects/clang500-import/crypto/openssl/Makefile projects/clang500-import/crypto/openssl/Makefile.org projects/clang500-import/crypto/openssl/NEWS projects/clang500-import/crypto/openssl/README projects/clang500-import/crypto/openssl/apps/ca.c projects/clang500-import/crypto/openssl/apps/dhparam.c projects/clang500-import/crypto/openssl/apps/enc.c projects/clang500-import/crypto/openssl/apps/engine.c projects/clang500-import/crypto/openssl/apps/pkeyutl.c projects/clang500-import/crypto/openssl/apps/prime.c projects/clang500-import/crypto/openssl/apps/progs.h projects/clang500-import/crypto/openssl/apps/progs.pl projects/clang500-import/crypto/openssl/apps/req.c projects/clang500-import/crypto/openssl/apps/s_client.c projects/clang500-import/crypto/openssl/apps/s_server.c projects/clang500-import/crypto/openssl/apps/srp.c projects/clang500-import/crypto/openssl/appveyor.yml projects/clang500-import/crypto/openssl/config projects/clang500-import/crypto/openssl/crypto/aes/Makefile projects/clang500-import/crypto/openssl/crypto/aes/asm/aesni-sha1-x86_64.pl projects/clang500-import/crypto/openssl/crypto/aes/asm/aesni-sha256-x86_64.pl projects/clang500-import/crypto/openssl/crypto/aes/asm/bsaes-armv7.pl projects/clang500-import/crypto/openssl/crypto/asn1/a_bitstr.c projects/clang500-import/crypto/openssl/crypto/asn1/a_digest.c projects/clang500-import/crypto/openssl/crypto/asn1/a_gentm.c projects/clang500-import/crypto/openssl/crypto/asn1/a_strnid.c projects/clang500-import/crypto/openssl/crypto/asn1/a_time.c projects/clang500-import/crypto/openssl/crypto/asn1/a_utctm.c projects/clang500-import/crypto/openssl/crypto/asn1/f_enum.c projects/clang500-import/crypto/openssl/crypto/asn1/f_int.c projects/clang500-import/crypto/openssl/crypto/asn1/tasn_dec.c projects/clang500-import/crypto/openssl/crypto/asn1/tasn_new.c projects/clang500-import/crypto/openssl/crypto/asn1/x_long.c projects/clang500-import/crypto/openssl/crypto/asn1/x_name.c projects/clang500-import/crypto/openssl/crypto/bio/b_print.c projects/clang500-import/crypto/openssl/crypto/bio/bio_cb.c projects/clang500-import/crypto/openssl/crypto/bio/bss_file.c projects/clang500-import/crypto/openssl/crypto/bn/Makefile projects/clang500-import/crypto/openssl/crypto/bn/asm/sparcv9-mont.pl projects/clang500-import/crypto/openssl/crypto/bn/bn_prime.c projects/clang500-import/crypto/openssl/crypto/bn/bn_prime.h projects/clang500-import/crypto/openssl/crypto/bn/bn_prime.pl projects/clang500-import/crypto/openssl/crypto/bn/bn_print.c projects/clang500-import/crypto/openssl/crypto/comp/c_rle.c projects/clang500-import/crypto/openssl/crypto/conf/conf.h projects/clang500-import/crypto/openssl/crypto/conf/conf_def.c projects/clang500-import/crypto/openssl/crypto/conf/conf_err.c projects/clang500-import/crypto/openssl/crypto/des/Makefile projects/clang500-import/crypto/openssl/crypto/des/set_key.c projects/clang500-import/crypto/openssl/crypto/dh/dh.h projects/clang500-import/crypto/openssl/crypto/ec/ec_ameth.c projects/clang500-import/crypto/openssl/crypto/ec/ec_asn1.c projects/clang500-import/crypto/openssl/crypto/ec/ec_mult.c projects/clang500-import/crypto/openssl/crypto/ec/eck_prn.c projects/clang500-import/crypto/openssl/crypto/engine/eng_cryptodev.c projects/clang500-import/crypto/openssl/crypto/err/err.c projects/clang500-import/crypto/openssl/crypto/err/err.h projects/clang500-import/crypto/openssl/crypto/evp/e_aes.c projects/clang500-import/crypto/openssl/crypto/evp/e_aes_cbc_hmac_sha1.c projects/clang500-import/crypto/openssl/crypto/evp/e_aes_cbc_hmac_sha256.c projects/clang500-import/crypto/openssl/crypto/evp/e_des3.c projects/clang500-import/crypto/openssl/crypto/evp/evp_enc.c projects/clang500-import/crypto/openssl/crypto/evp/pmeth_lib.c projects/clang500-import/crypto/openssl/crypto/ex_data.c projects/clang500-import/crypto/openssl/crypto/hmac/hm_pmeth.c projects/clang500-import/crypto/openssl/crypto/md5/Makefile projects/clang500-import/crypto/openssl/crypto/mem.c projects/clang500-import/crypto/openssl/crypto/modes/Makefile projects/clang500-import/crypto/openssl/crypto/o_dir.c projects/clang500-import/crypto/openssl/crypto/o_time.c projects/clang500-import/crypto/openssl/crypto/opensslv.h projects/clang500-import/crypto/openssl/crypto/perlasm/x86_64-xlate.pl projects/clang500-import/crypto/openssl/crypto/pkcs12/p12_mutl.c projects/clang500-import/crypto/openssl/crypto/ppccap.c projects/clang500-import/crypto/openssl/crypto/rand/md_rand.c projects/clang500-import/crypto/openssl/crypto/rc4/Makefile projects/clang500-import/crypto/openssl/crypto/rsa/rsa_pmeth.c projects/clang500-import/crypto/openssl/crypto/rsa/rsa_pss.c projects/clang500-import/crypto/openssl/crypto/sha/Makefile projects/clang500-import/crypto/openssl/crypto/srp/srp_vfy.c projects/clang500-import/crypto/openssl/crypto/txt_db/txt_db.c projects/clang500-import/crypto/openssl/crypto/ui/ui_lib.c projects/clang500-import/crypto/openssl/crypto/x509/x509_lu.c projects/clang500-import/crypto/openssl/crypto/x509v3/v3_alt.c projects/clang500-import/crypto/openssl/crypto/x509v3/v3_cpols.c projects/clang500-import/crypto/openssl/crypto/x509v3/v3_info.c projects/clang500-import/crypto/openssl/crypto/x509v3/v3_purp.c projects/clang500-import/crypto/openssl/crypto/x86_64cpuid.pl projects/clang500-import/crypto/openssl/crypto/x86cpuid.pl projects/clang500-import/crypto/openssl/doc/apps/ciphers.pod projects/clang500-import/crypto/openssl/doc/apps/config.pod projects/clang500-import/crypto/openssl/doc/apps/genrsa.pod projects/clang500-import/crypto/openssl/doc/apps/req.pod projects/clang500-import/crypto/openssl/doc/apps/s_client.pod projects/clang500-import/crypto/openssl/doc/apps/s_server.pod projects/clang500-import/crypto/openssl/doc/crypto/EVP_EncryptInit.pod projects/clang500-import/crypto/openssl/doc/crypto/RSA_private_encrypt.pod projects/clang500-import/crypto/openssl/doc/crypto/RSA_public_encrypt.pod projects/clang500-import/crypto/openssl/doc/crypto/X509_STORE_CTX_new.pod projects/clang500-import/crypto/openssl/doc/crypto/des.pod projects/clang500-import/crypto/openssl/ssl/d1_both.c projects/clang500-import/crypto/openssl/ssl/d1_clnt.c projects/clang500-import/crypto/openssl/ssl/d1_pkt.c projects/clang500-import/crypto/openssl/ssl/d1_srvr.c projects/clang500-import/crypto/openssl/ssl/s23_clnt.c projects/clang500-import/crypto/openssl/ssl/s23_srvr.c projects/clang500-import/crypto/openssl/ssl/s3_clnt.c projects/clang500-import/crypto/openssl/ssl/s3_enc.c projects/clang500-import/crypto/openssl/ssl/s3_lib.c projects/clang500-import/crypto/openssl/ssl/s3_pkt.c projects/clang500-import/crypto/openssl/ssl/s3_srvr.c projects/clang500-import/crypto/openssl/ssl/ssl_cert.c projects/clang500-import/crypto/openssl/ssl/ssl_ciph.c projects/clang500-import/crypto/openssl/ssl/ssl_lib.c projects/clang500-import/crypto/openssl/ssl/ssl_locl.h projects/clang500-import/crypto/openssl/ssl/ssl_rsa.c projects/clang500-import/crypto/openssl/ssl/ssl_sess.c projects/clang500-import/crypto/openssl/ssl/ssltest.c projects/clang500-import/crypto/openssl/ssl/t1_ext.c projects/clang500-import/crypto/openssl/ssl/t1_lib.c projects/clang500-import/crypto/openssl/util/domd projects/clang500-import/crypto/openssl/util/mk1mf.pl projects/clang500-import/etc/mtree/BSD.root.dist projects/clang500-import/include/dirent.h projects/clang500-import/include/ndbm.h projects/clang500-import/include/stdio.h projects/clang500-import/include/termios.h projects/clang500-import/kerberos5/lib/libroken/Makefile projects/clang500-import/lib/Makefile projects/clang500-import/lib/lib80211/lib80211.3 projects/clang500-import/lib/libarchive/Makefile projects/clang500-import/lib/libc/gen/Makefile.inc projects/clang500-import/lib/libc/gen/Symbol.map projects/clang500-import/lib/libc/gen/basename.3 projects/clang500-import/lib/libc/gen/closedir.c projects/clang500-import/lib/libc/gen/directory.3 projects/clang500-import/lib/libc/gen/dirname.3 projects/clang500-import/lib/libc/gen/err.c projects/clang500-import/lib/libc/gen/fts-compat.c projects/clang500-import/lib/libc/gen/fts-compat.h projects/clang500-import/lib/libc/gen/fts.c projects/clang500-import/lib/libc/gen/gen-private.h projects/clang500-import/lib/libc/gen/opendir.c projects/clang500-import/lib/libc/gen/readdir.c projects/clang500-import/lib/libc/gen/scandir.c projects/clang500-import/lib/libc/gen/sem_timedwait.3 projects/clang500-import/lib/libc/gen/tcsendbreak.3 projects/clang500-import/lib/libc/gen/telldir.h projects/clang500-import/lib/libc/iconv/__iconv_get_list.3 projects/clang500-import/lib/libc/include/compat.h projects/clang500-import/lib/libc/include/libc_private.h projects/clang500-import/lib/libc/locale/localeconv.3 projects/clang500-import/lib/libc/net/sctp_bindx.3 projects/clang500-import/lib/libc/net/sctp_getassocid.3 projects/clang500-import/lib/libc/net/sctp_send.3 projects/clang500-import/lib/libc/posix1e/acl_create_entry.3 projects/clang500-import/lib/libc/posix1e/acl_to_text.3 projects/clang500-import/lib/libc/posix1e/posix1e.3 projects/clang500-import/lib/libc/stdio/fopen.3 projects/clang500-import/lib/libc/stdio/fopencookie.3 projects/clang500-import/lib/libc/stdlib/quick_exit.3 projects/clang500-import/lib/libc/sys/Makefile.inc projects/clang500-import/lib/libc/sys/Symbol.map projects/clang500-import/lib/libc/sys/_umtx_op.2 projects/clang500-import/lib/libc/sys/cap_enter.2 projects/clang500-import/lib/libc/sys/cpuset_getaffinity.2 projects/clang500-import/lib/libc/sys/fsync.2 projects/clang500-import/lib/libc/sys/getdirentries.2 projects/clang500-import/lib/libc/sys/kill.2 projects/clang500-import/lib/libc/sys/open.2 projects/clang500-import/lib/libc/sys/ptrace.2 projects/clang500-import/lib/libc/sys/rctl_add_rule.2 projects/clang500-import/lib/libc/sys/setfib.2 projects/clang500-import/lib/libc/sys/statfs.2 projects/clang500-import/lib/libc/xdr/xdr.3 projects/clang500-import/lib/libkvm/kvm_proc.c projects/clang500-import/lib/libmilter/Makefile projects/clang500-import/lib/libpmc/pmc_event_names_of_class.3 projects/clang500-import/lib/libproc/proc_sym.c projects/clang500-import/lib/libprocstat/Makefile projects/clang500-import/lib/libprocstat/Symbol.map projects/clang500-import/lib/libprocstat/libprocstat.c projects/clang500-import/lib/libprocstat/libprocstat.h projects/clang500-import/lib/libsysdecode/Makefile projects/clang500-import/lib/libsysdecode/flags.c projects/clang500-import/lib/libsysdecode/sysdecode.h projects/clang500-import/lib/libthr/Makefile projects/clang500-import/lib/libthr/arch/aarch64/include/pthread_md.h projects/clang500-import/lib/libthr/arch/arm/include/pthread_md.h projects/clang500-import/lib/libthr/arch/mips/include/pthread_md.h projects/clang500-import/lib/libthr/arch/powerpc/include/pthread_md.h projects/clang500-import/lib/libthr/arch/riscv/include/pthread_md.h projects/clang500-import/lib/libthr/thread/thr_exit.c projects/clang500-import/lib/libthr/thread/thr_kern.c projects/clang500-import/lib/libthr/thread/thr_list.c projects/clang500-import/lib/libthr/thread/thr_mutex.c projects/clang500-import/lib/libthr/thread/thr_private.h projects/clang500-import/lib/libthr/thread/thr_sig.c projects/clang500-import/lib/libufs/libufs.h projects/clang500-import/libexec/rtld-elf/arm/rtld_machdep.h projects/clang500-import/libexec/rtld-elf/mips/rtld_machdep.h projects/clang500-import/libexec/rtld-elf/powerpc/rtld_machdep.h projects/clang500-import/libexec/rtld-elf/powerpc64/rtld_machdep.h projects/clang500-import/libexec/rtld-elf/riscv/rtld_machdep.h projects/clang500-import/libexec/rtld-elf/rtld.c projects/clang500-import/release/Makefile.ec2 projects/clang500-import/release/tools/ec2.conf projects/clang500-import/release/tools/vmimage.subr projects/clang500-import/sbin/badsect/badsect.c projects/clang500-import/sbin/fsck_ffs/suj.c projects/clang500-import/sbin/zfsbootcfg/zfsbootcfg.8 projects/clang500-import/secure/lib/libcrypto/Makefile.inc projects/clang500-import/secure/lib/libcrypto/Makefile.man projects/clang500-import/secure/lib/libcrypto/amd64/aesni-sha1-x86_64.S projects/clang500-import/secure/lib/libcrypto/amd64/aesni-sha256-x86_64.S projects/clang500-import/secure/lib/libcrypto/amd64/x86_64cpuid.S projects/clang500-import/secure/lib/libcrypto/arm/bsaes-armv7.S projects/clang500-import/secure/lib/libcrypto/i386/x86cpuid.S projects/clang500-import/secure/lib/libcrypto/man/ASN1_OBJECT_new.3 projects/clang500-import/secure/lib/libcrypto/man/ASN1_STRING_length.3 projects/clang500-import/secure/lib/libcrypto/man/ASN1_STRING_new.3 projects/clang500-import/secure/lib/libcrypto/man/ASN1_STRING_print_ex.3 projects/clang500-import/secure/lib/libcrypto/man/ASN1_TIME_set.3 projects/clang500-import/secure/lib/libcrypto/man/ASN1_generate_nconf.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_ctrl.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_f_base64.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_f_buffer.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_f_cipher.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_f_md.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_f_null.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_f_ssl.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_find_type.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_new.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_new_CMS.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_push.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_read.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_s_accept.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_s_bio.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_s_connect.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_s_fd.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_s_file.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_s_mem.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_s_null.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_s_socket.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_set_callback.3 projects/clang500-import/secure/lib/libcrypto/man/BIO_should_retry.3 projects/clang500-import/secure/lib/libcrypto/man/BN_BLINDING_new.3 projects/clang500-import/secure/lib/libcrypto/man/BN_CTX_new.3 projects/clang500-import/secure/lib/libcrypto/man/BN_CTX_start.3 projects/clang500-import/secure/lib/libcrypto/man/BN_add.3 projects/clang500-import/secure/lib/libcrypto/man/BN_add_word.3 projects/clang500-import/secure/lib/libcrypto/man/BN_bn2bin.3 projects/clang500-import/secure/lib/libcrypto/man/BN_cmp.3 projects/clang500-import/secure/lib/libcrypto/man/BN_copy.3 projects/clang500-import/secure/lib/libcrypto/man/BN_generate_prime.3 projects/clang500-import/secure/lib/libcrypto/man/BN_mod_inverse.3 projects/clang500-import/secure/lib/libcrypto/man/BN_mod_mul_montgomery.3 projects/clang500-import/secure/lib/libcrypto/man/BN_mod_mul_reciprocal.3 projects/clang500-import/secure/lib/libcrypto/man/BN_new.3 projects/clang500-import/secure/lib/libcrypto/man/BN_num_bytes.3 projects/clang500-import/secure/lib/libcrypto/man/BN_rand.3 projects/clang500-import/secure/lib/libcrypto/man/BN_set_bit.3 projects/clang500-import/secure/lib/libcrypto/man/BN_swap.3 projects/clang500-import/secure/lib/libcrypto/man/BN_zero.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_add0_cert.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_add1_recipient_cert.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_add1_signer.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_compress.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_decrypt.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_encrypt.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_final.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_get0_RecipientInfos.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_get0_SignerInfos.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_get0_type.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_get1_ReceiptRequest.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_sign.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_sign_receipt.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_uncompress.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_verify.3 projects/clang500-import/secure/lib/libcrypto/man/CMS_verify_receipt.3 projects/clang500-import/secure/lib/libcrypto/man/CONF_modules_free.3 projects/clang500-import/secure/lib/libcrypto/man/CONF_modules_load_file.3 projects/clang500-import/secure/lib/libcrypto/man/CRYPTO_set_ex_data.3 projects/clang500-import/secure/lib/libcrypto/man/DH_generate_key.3 projects/clang500-import/secure/lib/libcrypto/man/DH_generate_parameters.3 projects/clang500-import/secure/lib/libcrypto/man/DH_get_ex_new_index.3 projects/clang500-import/secure/lib/libcrypto/man/DH_new.3 projects/clang500-import/secure/lib/libcrypto/man/DH_set_method.3 projects/clang500-import/secure/lib/libcrypto/man/DH_size.3 projects/clang500-import/secure/lib/libcrypto/man/DSA_SIG_new.3 projects/clang500-import/secure/lib/libcrypto/man/DSA_do_sign.3 projects/clang500-import/secure/lib/libcrypto/man/DSA_dup_DH.3 projects/clang500-import/secure/lib/libcrypto/man/DSA_generate_key.3 projects/clang500-import/secure/lib/libcrypto/man/DSA_generate_parameters.3 projects/clang500-import/secure/lib/libcrypto/man/DSA_get_ex_new_index.3 projects/clang500-import/secure/lib/libcrypto/man/DSA_new.3 projects/clang500-import/secure/lib/libcrypto/man/DSA_set_method.3 projects/clang500-import/secure/lib/libcrypto/man/DSA_sign.3 projects/clang500-import/secure/lib/libcrypto/man/DSA_size.3 projects/clang500-import/secure/lib/libcrypto/man/EC_GFp_simple_method.3 projects/clang500-import/secure/lib/libcrypto/man/EC_GROUP_copy.3 projects/clang500-import/secure/lib/libcrypto/man/EC_GROUP_new.3 projects/clang500-import/secure/lib/libcrypto/man/EC_KEY_new.3 projects/clang500-import/secure/lib/libcrypto/man/EC_POINT_add.3 projects/clang500-import/secure/lib/libcrypto/man/EC_POINT_new.3 projects/clang500-import/secure/lib/libcrypto/man/ERR_GET_LIB.3 projects/clang500-import/secure/lib/libcrypto/man/ERR_clear_error.3 projects/clang500-import/secure/lib/libcrypto/man/ERR_error_string.3 projects/clang500-import/secure/lib/libcrypto/man/ERR_get_error.3 projects/clang500-import/secure/lib/libcrypto/man/ERR_load_crypto_strings.3 projects/clang500-import/secure/lib/libcrypto/man/ERR_load_strings.3 projects/clang500-import/secure/lib/libcrypto/man/ERR_print_errors.3 projects/clang500-import/secure/lib/libcrypto/man/ERR_put_error.3 projects/clang500-import/secure/lib/libcrypto/man/ERR_remove_state.3 projects/clang500-import/secure/lib/libcrypto/man/ERR_set_mark.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_BytesToKey.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_DigestInit.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_DigestSignInit.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_DigestVerifyInit.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_EncodeInit.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_EncryptInit.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_OpenInit.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_CTX_ctrl.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_CTX_new.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_cmp.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_decrypt.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_derive.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_encrypt.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_get_default_digest.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_keygen.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_new.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_print_private.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_set1_RSA.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_sign.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_verify.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_PKEY_verify_recover.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_SealInit.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_SignInit.3 projects/clang500-import/secure/lib/libcrypto/man/EVP_VerifyInit.3 projects/clang500-import/secure/lib/libcrypto/man/OBJ_nid2obj.3 projects/clang500-import/secure/lib/libcrypto/man/OPENSSL_Applink.3 projects/clang500-import/secure/lib/libcrypto/man/OPENSSL_VERSION_NUMBER.3 projects/clang500-import/secure/lib/libcrypto/man/OPENSSL_config.3 projects/clang500-import/secure/lib/libcrypto/man/OPENSSL_ia32cap.3 projects/clang500-import/secure/lib/libcrypto/man/OPENSSL_instrument_bus.3 projects/clang500-import/secure/lib/libcrypto/man/OPENSSL_load_builtin_modules.3 projects/clang500-import/secure/lib/libcrypto/man/OpenSSL_add_all_algorithms.3 projects/clang500-import/secure/lib/libcrypto/man/PEM_write_bio_CMS_stream.3 projects/clang500-import/secure/lib/libcrypto/man/PEM_write_bio_PKCS7_stream.3 projects/clang500-import/secure/lib/libcrypto/man/PKCS12_create.3 projects/clang500-import/secure/lib/libcrypto/man/PKCS12_parse.3 projects/clang500-import/secure/lib/libcrypto/man/PKCS7_decrypt.3 projects/clang500-import/secure/lib/libcrypto/man/PKCS7_encrypt.3 projects/clang500-import/secure/lib/libcrypto/man/PKCS7_sign.3 projects/clang500-import/secure/lib/libcrypto/man/PKCS7_sign_add_signer.3 projects/clang500-import/secure/lib/libcrypto/man/PKCS7_verify.3 projects/clang500-import/secure/lib/libcrypto/man/RAND_add.3 projects/clang500-import/secure/lib/libcrypto/man/RAND_bytes.3 projects/clang500-import/secure/lib/libcrypto/man/RAND_cleanup.3 projects/clang500-import/secure/lib/libcrypto/man/RAND_egd.3 projects/clang500-import/secure/lib/libcrypto/man/RAND_load_file.3 projects/clang500-import/secure/lib/libcrypto/man/RAND_set_rand_method.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_blinding_on.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_check_key.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_generate_key.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_get_ex_new_index.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_new.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_padding_add_PKCS1_type_1.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_print.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_private_encrypt.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_public_encrypt.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_set_method.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_sign.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_sign_ASN1_OCTET_STRING.3 projects/clang500-import/secure/lib/libcrypto/man/RSA_size.3 projects/clang500-import/secure/lib/libcrypto/man/SMIME_read_CMS.3 projects/clang500-import/secure/lib/libcrypto/man/SMIME_read_PKCS7.3 projects/clang500-import/secure/lib/libcrypto/man/SMIME_write_CMS.3 projects/clang500-import/secure/lib/libcrypto/man/SMIME_write_PKCS7.3 projects/clang500-import/secure/lib/libcrypto/man/X509_NAME_ENTRY_get_object.3 projects/clang500-import/secure/lib/libcrypto/man/X509_NAME_add_entry_by_txt.3 projects/clang500-import/secure/lib/libcrypto/man/X509_NAME_get_index_by_NID.3 projects/clang500-import/secure/lib/libcrypto/man/X509_NAME_print_ex.3 projects/clang500-import/secure/lib/libcrypto/man/X509_STORE_CTX_get_error.3 projects/clang500-import/secure/lib/libcrypto/man/X509_STORE_CTX_get_ex_new_index.3 projects/clang500-import/secure/lib/libcrypto/man/X509_STORE_CTX_new.3 projects/clang500-import/secure/lib/libcrypto/man/X509_STORE_CTX_set_verify_cb.3 projects/clang500-import/secure/lib/libcrypto/man/X509_STORE_set_verify_cb_func.3 projects/clang500-import/secure/lib/libcrypto/man/X509_VERIFY_PARAM_set_flags.3 projects/clang500-import/secure/lib/libcrypto/man/X509_check_host.3 projects/clang500-import/secure/lib/libcrypto/man/X509_new.3 projects/clang500-import/secure/lib/libcrypto/man/X509_verify_cert.3 projects/clang500-import/secure/lib/libcrypto/man/bio.3 projects/clang500-import/secure/lib/libcrypto/man/blowfish.3 projects/clang500-import/secure/lib/libcrypto/man/bn.3 projects/clang500-import/secure/lib/libcrypto/man/bn_internal.3 projects/clang500-import/secure/lib/libcrypto/man/buffer.3 projects/clang500-import/secure/lib/libcrypto/man/crypto.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_ASN1_OBJECT.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_CMS_ContentInfo.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_DHparams.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_DSAPublicKey.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_ECPKParameters.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_ECPrivateKey.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_PKCS8PrivateKey.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_PrivateKey.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_RSAPublicKey.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_X509.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_X509_ALGOR.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_X509_CRL.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_X509_NAME.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_X509_REQ.3 projects/clang500-import/secure/lib/libcrypto/man/d2i_X509_SIG.3 projects/clang500-import/secure/lib/libcrypto/man/des.3 projects/clang500-import/secure/lib/libcrypto/man/dh.3 projects/clang500-import/secure/lib/libcrypto/man/dsa.3 projects/clang500-import/secure/lib/libcrypto/man/ec.3 projects/clang500-import/secure/lib/libcrypto/man/ecdsa.3 projects/clang500-import/secure/lib/libcrypto/man/engine.3 projects/clang500-import/secure/lib/libcrypto/man/err.3 projects/clang500-import/secure/lib/libcrypto/man/evp.3 projects/clang500-import/secure/lib/libcrypto/man/hmac.3 projects/clang500-import/secure/lib/libcrypto/man/i2d_CMS_bio_stream.3 projects/clang500-import/secure/lib/libcrypto/man/i2d_PKCS7_bio_stream.3 projects/clang500-import/secure/lib/libcrypto/man/lh_stats.3 projects/clang500-import/secure/lib/libcrypto/man/lhash.3 projects/clang500-import/secure/lib/libcrypto/man/md5.3 projects/clang500-import/secure/lib/libcrypto/man/mdc2.3 projects/clang500-import/secure/lib/libcrypto/man/pem.3 projects/clang500-import/secure/lib/libcrypto/man/rand.3 projects/clang500-import/secure/lib/libcrypto/man/rc4.3 projects/clang500-import/secure/lib/libcrypto/man/ripemd.3 projects/clang500-import/secure/lib/libcrypto/man/rsa.3 projects/clang500-import/secure/lib/libcrypto/man/sha.3 projects/clang500-import/secure/lib/libcrypto/man/threads.3 projects/clang500-import/secure/lib/libcrypto/man/ui.3 projects/clang500-import/secure/lib/libcrypto/man/ui_compat.3 projects/clang500-import/secure/lib/libcrypto/man/x509.3 projects/clang500-import/secure/lib/libssl/Makefile.man projects/clang500-import/secure/lib/libssl/man/SSL_CIPHER_get_name.3 projects/clang500-import/secure/lib/libssl/man/SSL_COMP_add_compression_method.3 projects/clang500-import/secure/lib/libssl/man/SSL_CONF_CTX_new.3 projects/clang500-import/secure/lib/libssl/man/SSL_CONF_CTX_set1_prefix.3 projects/clang500-import/secure/lib/libssl/man/SSL_CONF_CTX_set_flags.3 projects/clang500-import/secure/lib/libssl/man/SSL_CONF_CTX_set_ssl_ctx.3 projects/clang500-import/secure/lib/libssl/man/SSL_CONF_cmd.3 projects/clang500-import/secure/lib/libssl/man/SSL_CONF_cmd_argv.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_add1_chain_cert.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_add_extra_chain_cert.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_add_session.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_ctrl.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_flush_sessions.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_free.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_get0_param.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_get_ex_new_index.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_get_verify_mode.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_load_verify_locations.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_new.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_sess_number.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_sess_set_cache_size.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_sess_set_get_cb.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_sessions.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set1_curves.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set1_verify_cert_store.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_alpn_select_cb.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_cert_cb.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_cert_store.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_cert_verify_callback.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_cipher_list.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_client_CA_list.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_client_cert_cb.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_custom_cli_ext.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_default_passwd_cb.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_generate_session_id.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_info_callback.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_max_cert_list.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_mode.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_msg_callback.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_options.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_psk_client_callback.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_quiet_shutdown.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_read_ahead.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_session_cache_mode.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_session_id_context.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_ssl_version.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_timeout.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_tlsext_status_cb.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_tlsext_ticket_key_cb.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_tmp_dh_callback.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_tmp_rsa_callback.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_set_verify.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_use_certificate.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_use_psk_identity_hint.3 projects/clang500-import/secure/lib/libssl/man/SSL_CTX_use_serverinfo.3 projects/clang500-import/secure/lib/libssl/man/SSL_SESSION_free.3 projects/clang500-import/secure/lib/libssl/man/SSL_SESSION_get_ex_new_index.3 projects/clang500-import/secure/lib/libssl/man/SSL_SESSION_get_time.3 projects/clang500-import/secure/lib/libssl/man/SSL_accept.3 projects/clang500-import/secure/lib/libssl/man/SSL_alert_type_string.3 projects/clang500-import/secure/lib/libssl/man/SSL_check_chain.3 projects/clang500-import/secure/lib/libssl/man/SSL_clear.3 projects/clang500-import/secure/lib/libssl/man/SSL_connect.3 projects/clang500-import/secure/lib/libssl/man/SSL_do_handshake.3 projects/clang500-import/secure/lib/libssl/man/SSL_free.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_SSL_CTX.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_ciphers.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_client_CA_list.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_current_cipher.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_default_timeout.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_error.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_ex_data_X509_STORE_CTX_idx.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_ex_new_index.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_fd.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_peer_cert_chain.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_peer_certificate.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_psk_identity.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_rbio.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_session.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_verify_result.3 projects/clang500-import/secure/lib/libssl/man/SSL_get_version.3 projects/clang500-import/secure/lib/libssl/man/SSL_library_init.3 projects/clang500-import/secure/lib/libssl/man/SSL_load_client_CA_file.3 projects/clang500-import/secure/lib/libssl/man/SSL_new.3 projects/clang500-import/secure/lib/libssl/man/SSL_pending.3 projects/clang500-import/secure/lib/libssl/man/SSL_read.3 projects/clang500-import/secure/lib/libssl/man/SSL_rstate_string.3 projects/clang500-import/secure/lib/libssl/man/SSL_session_reused.3 projects/clang500-import/secure/lib/libssl/man/SSL_set_bio.3 projects/clang500-import/secure/lib/libssl/man/SSL_set_connect_state.3 projects/clang500-import/secure/lib/libssl/man/SSL_set_fd.3 projects/clang500-import/secure/lib/libssl/man/SSL_set_session.3 projects/clang500-import/secure/lib/libssl/man/SSL_set_shutdown.3 projects/clang500-import/secure/lib/libssl/man/SSL_set_verify_result.3 projects/clang500-import/secure/lib/libssl/man/SSL_shutdown.3 projects/clang500-import/secure/lib/libssl/man/SSL_state_string.3 projects/clang500-import/secure/lib/libssl/man/SSL_want.3 projects/clang500-import/secure/lib/libssl/man/SSL_write.3 projects/clang500-import/secure/lib/libssl/man/d2i_SSL_SESSION.3 projects/clang500-import/secure/lib/libssl/man/ssl.3 projects/clang500-import/secure/usr.bin/openssl/Makefile.man projects/clang500-import/secure/usr.bin/openssl/man/CA.pl.1 projects/clang500-import/secure/usr.bin/openssl/man/asn1parse.1 projects/clang500-import/secure/usr.bin/openssl/man/c_rehash.1 projects/clang500-import/secure/usr.bin/openssl/man/ca.1 projects/clang500-import/secure/usr.bin/openssl/man/ciphers.1 projects/clang500-import/secure/usr.bin/openssl/man/cms.1 projects/clang500-import/secure/usr.bin/openssl/man/crl.1 projects/clang500-import/secure/usr.bin/openssl/man/crl2pkcs7.1 projects/clang500-import/secure/usr.bin/openssl/man/dgst.1 projects/clang500-import/secure/usr.bin/openssl/man/dhparam.1 projects/clang500-import/secure/usr.bin/openssl/man/dsa.1 projects/clang500-import/secure/usr.bin/openssl/man/dsaparam.1 projects/clang500-import/secure/usr.bin/openssl/man/ec.1 projects/clang500-import/secure/usr.bin/openssl/man/ecparam.1 projects/clang500-import/secure/usr.bin/openssl/man/enc.1 projects/clang500-import/secure/usr.bin/openssl/man/errstr.1 projects/clang500-import/secure/usr.bin/openssl/man/gendsa.1 projects/clang500-import/secure/usr.bin/openssl/man/genpkey.1 projects/clang500-import/secure/usr.bin/openssl/man/genrsa.1 projects/clang500-import/secure/usr.bin/openssl/man/nseq.1 projects/clang500-import/secure/usr.bin/openssl/man/ocsp.1 projects/clang500-import/secure/usr.bin/openssl/man/openssl.1 projects/clang500-import/secure/usr.bin/openssl/man/passwd.1 projects/clang500-import/secure/usr.bin/openssl/man/pkcs12.1 projects/clang500-import/secure/usr.bin/openssl/man/pkcs7.1 projects/clang500-import/secure/usr.bin/openssl/man/pkcs8.1 projects/clang500-import/secure/usr.bin/openssl/man/pkey.1 projects/clang500-import/secure/usr.bin/openssl/man/pkeyparam.1 projects/clang500-import/secure/usr.bin/openssl/man/pkeyutl.1 projects/clang500-import/secure/usr.bin/openssl/man/rand.1 projects/clang500-import/secure/usr.bin/openssl/man/req.1 projects/clang500-import/secure/usr.bin/openssl/man/rsa.1 projects/clang500-import/secure/usr.bin/openssl/man/rsautl.1 projects/clang500-import/secure/usr.bin/openssl/man/s_client.1 projects/clang500-import/secure/usr.bin/openssl/man/s_server.1 projects/clang500-import/secure/usr.bin/openssl/man/s_time.1 projects/clang500-import/secure/usr.bin/openssl/man/sess_id.1 projects/clang500-import/secure/usr.bin/openssl/man/smime.1 projects/clang500-import/secure/usr.bin/openssl/man/speed.1 projects/clang500-import/secure/usr.bin/openssl/man/spkac.1 projects/clang500-import/secure/usr.bin/openssl/man/ts.1 projects/clang500-import/secure/usr.bin/openssl/man/tsget.1 projects/clang500-import/secure/usr.bin/openssl/man/verify.1 projects/clang500-import/secure/usr.bin/openssl/man/version.1 projects/clang500-import/secure/usr.bin/openssl/man/x509.1 projects/clang500-import/secure/usr.bin/openssl/man/x509v3_config.1 projects/clang500-import/share/doc/Makefile projects/clang500-import/share/doc/papers/timecounter/timecounter.ms projects/clang500-import/share/examples/Makefile projects/clang500-import/share/man/man4/capsicum.4 projects/clang500-import/share/man/man4/mmcsd.4 projects/clang500-import/share/man/man4/mpr.4 projects/clang500-import/share/man/man4/mps.4 projects/clang500-import/share/man/man5/acct.5 projects/clang500-import/share/man/man5/dir.5 projects/clang500-import/share/man/man7/growfs.7 projects/clang500-import/share/man/man9/Makefile projects/clang500-import/share/man/man9/bitset.9 projects/clang500-import/share/man/man9/iflibdi.9 projects/clang500-import/share/man/man9/mutex.9 projects/clang500-import/share/misc/Makefile projects/clang500-import/share/misc/pci_vendors projects/clang500-import/sys/arm/mv/armada38x/armada38x.c projects/clang500-import/sys/arm/mv/armada38x/files.armada38x projects/clang500-import/sys/arm/mv/files.mv projects/clang500-import/sys/arm/mv/mv_common.c projects/clang500-import/sys/arm/mv/mv_pci.c projects/clang500-import/sys/arm/mv/mvreg.h projects/clang500-import/sys/arm64/conf/GENERIC projects/clang500-import/sys/boot/common/dev_net.c projects/clang500-import/sys/boot/mips/beri/boot2/Makefile projects/clang500-import/sys/bsm/audit.h projects/clang500-import/sys/cam/ata/ata_xpt.c projects/clang500-import/sys/cddl/compat/opensolaris/sys/dirent.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/bpobj.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_object.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode_sync.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_bookmark.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_deadlist.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_pool.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/multilist.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sa.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_impl.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_objset.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dmu_tx.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dnode.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dataset.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_dir.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dsl_pool.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/multilist.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/txg.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zap.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zap_impl.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zfs_ioctl.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zil.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio.h projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap_leaf.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zap_micro.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_dir.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c projects/clang500-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c projects/clang500-import/sys/compat/freebsd32/capabilities.conf projects/clang500-import/sys/compat/freebsd32/freebsd32.h projects/clang500-import/sys/compat/freebsd32/freebsd32_misc.c projects/clang500-import/sys/compat/freebsd32/freebsd32_proto.h projects/clang500-import/sys/compat/freebsd32/freebsd32_syscall.h projects/clang500-import/sys/compat/freebsd32/freebsd32_syscalls.c projects/clang500-import/sys/compat/freebsd32/freebsd32_sysent.c projects/clang500-import/sys/compat/freebsd32/freebsd32_systrace_args.c projects/clang500-import/sys/compat/freebsd32/syscalls.master projects/clang500-import/sys/compat/linux/linux_file.c projects/clang500-import/sys/compat/ndis/kern_ndis.c projects/clang500-import/sys/compat/ndis/subr_ndis.c projects/clang500-import/sys/conf/files projects/clang500-import/sys/contrib/ipfilter/netinet/ip_nat.c projects/clang500-import/sys/dev/ath/ah_osdep.c projects/clang500-import/sys/dev/ath/ath_dfs/null/dfs_null.c projects/clang500-import/sys/dev/ath/ath_hal/ah.c projects/clang500-import/sys/dev/ath/ath_hal/ah_desc.h projects/clang500-import/sys/dev/ath/ath_hal/ah_internal.h projects/clang500-import/sys/dev/ath/ath_rate/sample/sample.c projects/clang500-import/sys/dev/ath/if_ath.c projects/clang500-import/sys/dev/ath/if_ath_ahb.c projects/clang500-import/sys/dev/ath/if_ath_pci.c projects/clang500-import/sys/dev/ath/if_ath_rx.c projects/clang500-import/sys/dev/bhnd/nvram/bhnd_nvram_data_sprom.c projects/clang500-import/sys/dev/bhnd/nvram/bhnd_sprom.c projects/clang500-import/sys/dev/cxgbe/firmware/t4fw_cfg_uwire.txt projects/clang500-import/sys/dev/cxgbe/firmware/t4fw_interface.h projects/clang500-import/sys/dev/cxgbe/firmware/t5fw_cfg_uwire.txt projects/clang500-import/sys/dev/cxgbe/firmware/t6fw_cfg_uwire.txt projects/clang500-import/sys/dev/cxgbe/iw_cxgbe/cm.c projects/clang500-import/sys/dev/etherswitch/arswitch/arswitch_phy.c projects/clang500-import/sys/dev/if_ndis/if_ndis.c projects/clang500-import/sys/dev/if_ndis/if_ndisvar.h projects/clang500-import/sys/dev/mpr/mpr.c projects/clang500-import/sys/dev/mpr/mpr_mapping.c projects/clang500-import/sys/dev/mpr/mpr_sas.c projects/clang500-import/sys/dev/mpr/mpr_sas_lsi.c projects/clang500-import/sys/dev/mpr/mpr_user.c projects/clang500-import/sys/dev/mpr/mprvar.h projects/clang500-import/sys/dev/mps/mps.c projects/clang500-import/sys/dev/mps/mps_mapping.c projects/clang500-import/sys/dev/mps/mps_sas.c projects/clang500-import/sys/dev/mps/mps_sas_lsi.c projects/clang500-import/sys/dev/mps/mps_user.c projects/clang500-import/sys/dev/mps/mpsvar.h projects/clang500-import/sys/dev/qlnx/qlnxe/qlnx_os.c projects/clang500-import/sys/dev/snp/snp.c projects/clang500-import/sys/dev/sound/pcm/buffer.c projects/clang500-import/sys/dev/sound/pcm/feeder_mixer.c projects/clang500-import/sys/dev/vmware/vmxnet3/if_vmx.c projects/clang500-import/sys/fs/devfs/devfs_devs.c projects/clang500-import/sys/fs/devfs/devfs_vnops.c projects/clang500-import/sys/fs/fdescfs/fdesc_vnops.c projects/clang500-import/sys/fs/nandfs/nandfs_fs.h projects/clang500-import/sys/fs/nfs/nfsport.h projects/clang500-import/sys/fs/nfsclient/nfs_clrpcops.c projects/clang500-import/sys/fs/nfsclient/nfs_clvnops.c projects/clang500-import/sys/fs/nfsserver/nfs_nfsdport.c projects/clang500-import/sys/i386/i386/machdep.c projects/clang500-import/sys/kern/capabilities.conf projects/clang500-import/sys/kern/init_sysent.c projects/clang500-import/sys/kern/kern_acct.c projects/clang500-import/sys/kern/kern_cpuset.c projects/clang500-import/sys/kern/kern_descrip.c projects/clang500-import/sys/kern/kern_proc.c projects/clang500-import/sys/kern/kern_prot.c projects/clang500-import/sys/kern/makesyscalls.sh projects/clang500-import/sys/kern/sys_socket.c projects/clang500-import/sys/kern/syscalls.c projects/clang500-import/sys/kern/syscalls.master projects/clang500-import/sys/kern/systrace_args.c projects/clang500-import/sys/kern/tty.c projects/clang500-import/sys/kern/tty_pts.c projects/clang500-import/sys/kern/vfs_syscalls.c projects/clang500-import/sys/kern/vfs_vnops.c projects/clang500-import/sys/mips/atheros/ar71xx_fixup.c projects/clang500-import/sys/mips/atheros/files.ar71xx projects/clang500-import/sys/mips/mips/busdma_machdep.c projects/clang500-import/sys/modules/Makefile projects/clang500-import/sys/modules/ath/Makefile projects/clang500-import/sys/modules/cxgbe/t4_firmware/Makefile projects/clang500-import/sys/modules/cxgbe/t5_firmware/Makefile projects/clang500-import/sys/modules/cxgbe/t6_firmware/Makefile projects/clang500-import/sys/net/if_lagg.c projects/clang500-import/sys/net/if_lagg.h projects/clang500-import/sys/net/if_vlan.c projects/clang500-import/sys/netinet/in_pcb.c projects/clang500-import/sys/netinet/in_pcb.h projects/clang500-import/sys/netinet/sctp_input.c projects/clang500-import/sys/netinet/sctp_os_bsd.h projects/clang500-import/sys/netinet/sctp_output.c projects/clang500-import/sys/netinet/sctp_pcb.c projects/clang500-import/sys/netinet/sctp_sysctl.c projects/clang500-import/sys/netinet/sctp_usrreq.c projects/clang500-import/sys/netipsec/ipsec_input.c projects/clang500-import/sys/netipsec/ipsec_output.c projects/clang500-import/sys/netipsec/xform_ah.c projects/clang500-import/sys/netipsec/xform_esp.c projects/clang500-import/sys/netipsec/xform_ipcomp.c projects/clang500-import/sys/nlm/nlm_advlock.c projects/clang500-import/sys/security/audit/audit_private.h projects/clang500-import/sys/sys/_termios.h projects/clang500-import/sys/sys/_types.h projects/clang500-import/sys/sys/acct.h projects/clang500-import/sys/sys/ata.h projects/clang500-import/sys/sys/bitset.h projects/clang500-import/sys/sys/dirent.h projects/clang500-import/sys/sys/mount.h projects/clang500-import/sys/sys/param.h projects/clang500-import/sys/sys/proc.h projects/clang500-import/sys/sys/stat.h projects/clang500-import/sys/sys/syscall.h projects/clang500-import/sys/sys/syscall.mk projects/clang500-import/sys/sys/syscallsubr.h projects/clang500-import/sys/sys/sysproto.h projects/clang500-import/sys/sys/tty.h projects/clang500-import/sys/sys/user.h projects/clang500-import/sys/sys/vnode.h projects/clang500-import/sys/tools/sound/snd_fxdiv_gen.awk projects/clang500-import/sys/vm/swap_pager.c projects/clang500-import/sys/vm/vm_object.c projects/clang500-import/sys/vm/vm_param.h projects/clang500-import/sys/x86/include/segments.h projects/clang500-import/tools/build/mk/OptionalObsoleteFiles.inc projects/clang500-import/tools/tools/sysbuild/sysbuild.sh projects/clang500-import/usr.bin/grep/grep.c projects/clang500-import/usr.bin/grep/grep.h projects/clang500-import/usr.bin/grep/regex/tre-fastmatch.c projects/clang500-import/usr.bin/grep/util.c projects/clang500-import/usr.bin/kdump/kdump.c projects/clang500-import/usr.bin/lastcomm/lastcomm.c projects/clang500-import/usr.bin/lastcomm/readrec.c projects/clang500-import/usr.bin/truss/syscalls.c projects/clang500-import/usr.bin/vmstat/vmstat.c projects/clang500-import/usr.sbin/bhyve/bhyvegc.c (contents, props changed) projects/clang500-import/usr.sbin/bootparamd/bootparamd/bootparamd.c projects/clang500-import/usr.sbin/bsdconfig/console/keymap projects/clang500-import/usr.sbin/bsdconfig/share/keymap.subr projects/clang500-import/usr.sbin/bsdinstall/bsdinstall.8 projects/clang500-import/usr.sbin/bsdinstall/partedit/part_wizard.c projects/clang500-import/usr.sbin/bsdinstall/partedit/sade.8 projects/clang500-import/usr.sbin/efidp/efidp.8 projects/clang500-import/usr.sbin/makefs/ffs.c projects/clang500-import/usr.sbin/makefs/ffs/buf.c projects/clang500-import/usr.sbin/makefs/ffs/buf.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/mkfs.c projects/clang500-import/usr.sbin/makefs/ffs/ufs_inode.h projects/clang500-import/usr.sbin/makefs/makefs.8 projects/clang500-import/usr.sbin/makefs/makefs.c projects/clang500-import/usr.sbin/makefs/makefs.h projects/clang500-import/usr.sbin/newsyslog/extern.h projects/clang500-import/usr.sbin/newsyslog/newsyslog.8 projects/clang500-import/usr.sbin/newsyslog/newsyslog.c projects/clang500-import/usr.sbin/newsyslog/newsyslog.conf.5 projects/clang500-import/usr.sbin/newsyslog/ptimes.c projects/clang500-import/usr.sbin/newsyslog/tests/legacy_test.sh projects/clang500-import/usr.sbin/pmcstudy/pmcstudy.8 projects/clang500-import/usr.sbin/pstat/pstat.c projects/clang500-import/usr.sbin/sa/extern.h projects/clang500-import/usr.sbin/sa/main.c projects/clang500-import/usr.sbin/ypldap/aldap.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/cddl/contrib/opensolaris/cmd/zdb/ (props changed) projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/ (props changed) projects/clang500-import/contrib/binutils/ (props changed) projects/clang500-import/contrib/blacklist/ (props changed) projects/clang500-import/contrib/compiler-rt/ (props changed) projects/clang500-import/contrib/gcc/ (props changed) projects/clang500-import/contrib/libc-vis/ (props changed) projects/clang500-import/contrib/llvm/ (props changed) projects/clang500-import/contrib/llvm/tools/lldb/ (props changed) projects/clang500-import/contrib/netbsd-tests/ (props changed) projects/clang500-import/contrib/openbsm/ (props changed) projects/clang500-import/crypto/openssl/ (props changed) projects/clang500-import/sys/cddl/contrib/opensolaris/ (props changed) projects/clang500-import/sys/contrib/ipfilter/ (props changed) Modified: projects/clang500-import/Makefile.inc1 ============================================================================== --- projects/clang500-import/Makefile.inc1 Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/Makefile.inc1 Fri May 26 19:11:24 2017 (r318964) @@ -505,11 +505,6 @@ CROSSENV+= MAKEOBJDIRPREFIX=${OBJTREE} \ # Don't rebuild build-tools targets during normal build. CROSSENV+= BUILD_TOOLS_META=.NOMETA .endif -.if ${MK_GROFF} != "no" -CROSSENV+= GROFF_BIN_PATH=${WORLDTMP}/legacy/usr/bin \ - GROFF_FONT_PATH=${WORLDTMP}/legacy/usr/share/groff_font \ - GROFF_TMAC_PATH=${WORLDTMP}/legacy/usr/share/tmac -.endif .if defined(TARGET_CFLAGS) CROSSENV+= ${TARGET_CFLAGS} .endif @@ -712,16 +707,39 @@ _worldtmp: .PHONY .else rm -rf ${WORLDTMP}/legacy/usr/include .endif +# Dependencies cannot cope with certain source tree changes, particularly +# with respect to removing source files and replacing generated files. +# Handle these cases here in an ad-hoc fashion. +# 20160829 remove stale dependencies for ptrace stub, rewritten in C +# in r305012 +.for f in ptrace +.if exists(${OBJTREE}${.CURDIR}/lib/libc/.depend.${f}.o) + @if egrep -q '/${f}.[sS]' \ + ${OBJTREE}${.CURDIR}/lib/libc/.depend.${f}.o; then \ + echo Removing stale dependencies for ${f} syscall wrappers; \ + rm -f ${OBJTREE}${.CURDIR}/lib/libc/.depend.${f}.* \ + ${OBJTREE}${.CURDIR}/world32/${.CURDIR}/lib/libc/.depend.${f}.*; \ + fi +.endif +.endfor +# 20170523 remove stale generated asm files for functions which are no longer +# syscalls after r302092 (pipe) and r318736 (others) +.for f in getdents lstat mknod pipe stat +.if exists(${OBJTREE}${.CURDIR}/lib/libc/${f}.s) || \ + exists(${OBJTREE}${.CURDIR}/lib/libc/${f}.S) + @echo Removing stale generated ${f} syscall files + @rm -f ${OBJTREE}${.CURDIR}/lib/libc/${f}.* \ + ${OBJTREE}${.CURDIR}/lib/libc/.depend.${f}.* \ + ${OBJTREE}${.CURDIR}/world32/${.CURDIR}/lib/libc/${f}.* \ + ${OBJTREE}${.CURDIR}/world32/${.CURDIR}/lib/libc/.depend.${f}.* +.endif +.endfor .for _dir in \ lib lib/casper usr legacy/bin legacy/usr mkdir -p ${WORLDTMP}/${_dir} .endfor mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ -p ${WORLDTMP}/legacy/usr >/dev/null -.if ${MK_GROFF} != "no" - mtree -deU -f ${.CURDIR}/etc/mtree/BSD.groff.dist \ - -p ${WORLDTMP}/legacy/usr >/dev/null -.endif mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ -p ${WORLDTMP}/legacy/usr/include >/dev/null mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ @@ -1654,11 +1672,6 @@ _strfile= usr.bin/fortune/strfile _gperf= gnu/usr.bin/gperf .endif -.if ${MK_SHAREDOCS} != "no" && ${MK_GROFF} != "no" -_groff= gnu/usr.bin/groff \ - usr.bin/soelim -.endif - .if ${MK_VT} != "no" _vtfontcvt= usr.bin/vtfontcvt .endif @@ -1765,7 +1778,6 @@ bootstrap-tools: .PHONY ${_kerberos5_bootstrap_tools} \ ${_strfile} \ ${_gperf} \ - ${_groff} \ ${_dtc} \ ${_cat} \ ${_kbdcontrol} \ Modified: projects/clang500-import/ObsoleteFiles.inc ============================================================================== --- projects/clang500-import/ObsoleteFiles.inc Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/ObsoleteFiles.inc Fri May 26 19:11:24 2017 (r318964) @@ -150,6 +150,78 @@ OLD_FILES+=usr/lib/clang/4.0.0/lib/freeb OLD_DIRS+=usr/lib/clang/4.0.0/lib/freebsd OLD_DIRS+=usr/lib/clang/4.0.0/lib OLD_DIRS+=usr/lib/clang/4.0.0 +# 20170525: remove misleading template +OLD_FILES+=usr/share/misc/man.template +# 20170525: disconnect the roff docs from the build +OLD_FILES+=usr/share/doc/papers/beyond43.ascii.gz +OLD_FILES+=usr/share/doc/papers/bio.ascii.gz +OLD_FILES+=usr/share/doc/papers/contents.ascii.gz +OLD_FILES+=usr/share/doc/papers/devfs.ascii.gz +OLD_FILES+=usr/share/doc/papers/diskperf.ascii.gz +OLD_FILES+=usr/share/doc/papers/fsinterface.ascii.gz +OLD_FILES+=usr/share/doc/papers/hwpmc.ascii.gz +OLD_FILES+=usr/share/doc/papers/jail.ascii.gz +OLD_FILES+=usr/share/doc/papers/kernmalloc.ascii.gz +OLD_FILES+=usr/share/doc/papers/kerntune.ascii.gz +OLD_FILES+=usr/share/doc/papers/malloc.ascii.gz +OLD_FILES+=usr/share/doc/papers/newvm.ascii.gz +OLD_FILES+=usr/share/doc/papers/releng.ascii.gz +OLD_FILES+=usr/share/doc/papers/sysperf.ascii.gz +OLD_FILES+=usr/share/doc/papers/timecounter.ascii.gz +OLD_FILES+=usr/share/doc/psd/01.cacm/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/02.implement/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/03.iosys/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/04.uprog/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/05.sysman/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/06.Clang/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/12.make/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/13.rcs/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/13.rcs/rcs_func.ascii.gz +OLD_FILES+=usr/share/doc/psd/15.yacc/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/16.lex/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/17.m4/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/18.gprof/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/20.ipctut/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/21.ipc/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/22.rpcgen/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/23.rpc/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/24.xdr/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/25.xdrrfc/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/26.rpcrfc/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/27.nfsrfc/paper.ascii.gz +OLD_FILES+=usr/share/doc/psd/Title.ascii.gz +OLD_FILES+=usr/share/doc/psd/contents.ascii.gz +OLD_FILES+=usr/share/doc/smm/01.setup/paper.ascii.gz +OLD_FILES+=usr/share/doc/smm/02.config/paper.ascii.gz +OLD_FILES+=usr/share/doc/smm/03.fsck/paper.ascii.gz +OLD_FILES+=usr/share/doc/smm/04.quotas/paper.ascii.gz +OLD_FILES+=usr/share/doc/smm/05.fastfs/paper.ascii.gz +OLD_FILES+=usr/share/doc/smm/06.nfs/paper.ascii.gz +OLD_FILES+=usr/share/doc/smm/07.lpd/paper.ascii.gz +OLD_FILES+=usr/share/doc/smm/08.sendmailop/paper.ascii.gz +OLD_FILES+=usr/share/doc/smm/11.timedop/paper.ascii.gz +OLD_FILES+=usr/share/doc/smm/12.timed/paper.ascii.gz +OLD_FILES+=usr/share/doc/smm/18.net/paper.ascii.gz +OLD_FILES+=usr/share/doc/smm/Title.ascii.gz +OLD_FILES+=usr/share/doc/smm/contents.ascii.gz +OLD_FILES+=usr/share/doc/usd/04.csh/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/05.dc/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/06.bc/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/07.mail/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/10.exref/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/10.exref/summary.ascii.gz +OLD_FILES+=usr/share/doc/usd/11.edit/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/12.vi/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/12.vi/summary.ascii.gz +OLD_FILES+=usr/share/doc/usd/12.vi/viapwh.ascii.gz +OLD_FILES+=usr/share/doc/usd/13.viref/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/18.msdiffs/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/19.memacros/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/20.meref/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/21.troff/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/22.trofftut/paper.ascii.gz +OLD_FILES+=usr/share/doc/usd/Title.ascii.gz +OLD_FILES+=usr/share/doc/usd/contents.ascii.gz # 20170427: NATM configuration support removed OLD_FILES+=etc/rc.d/atm1 OLD_FILES+=etc/rc.d/atm2 Modified: projects/clang500-import/UPDATING ============================================================================== --- projects/clang500-import/UPDATING Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/UPDATING Fri May 26 19:11:24 2017 (r318964) @@ -6,7 +6,7 @@ COMMON ITEMS: section later in the file. basically know what you are doing. If not, then please consult the FreeBSD handbook: - http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html + https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/updating-src.html Items affecting the ports and packages system can be found in /usr/ports/UPDATING. Please read that file before running portupgrade. @@ -56,6 +56,47 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12 Please see the 20141231 entry below for information about prerequisites and upgrading, if you are not already using clang 3.5.0 or higher. +20170524: + The ath(4) and ath_hal(4) modules now build piecemeal to allow for + smaller runtime footprint builds. This is useful for embedded systems + which only require one chipset support. + + If you load it as a module, make sure this is in /boot/loader.conf: + + if_ath_load="YES" + + This will load the HAL, all chip/RF backends and if_ath_pci. + If you have if_ath_pci in /boot/loader.conf, ensure it is after + if_ath or it will not load any HAL chipset support. + + If you want to selectively load things (eg on ye cheape ARM/MIPS + platforms where RAM is at a premium) you should: + + * load ath_hal + * load the chip modules in question + * load ath_rate, ath_dfs + * load ath_main + * load if_ath_pci and/or if_ath_ahb depending upon your particular + bus bind type - this is where probe/attach is done. + + For further comments/feedback, poke adrian@ . + +20170523: + The "ino64" 64-bit inode project has been committed, which extends + a number of types to 64 bits. Upgrading in place requires care and + adherence to the documented upgrade procedure. + + If using a custom kernel configuration ensure that the + COMPAT_FREEBSD11 option is included (as during the upgrade the + system will be running the ino64 kernel with the existing world). + + For the safest in-place upgrade begin by removing previous build + artifacts via "rm -rf /usr/obj/*". Then, carefully follow the + full procedure documented below under the heading "To rebuild + everything and install it on the current system." Specifically, + a reboot is required after installing the new kernel before + installing world. + 20170424: The NATM framework including the en(4), fatm(4), hatm(4), and patm(4) devices has been removed. Consumers should plan a Copied: projects/clang500-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/proc/tst.exitcore.c (from r318963, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/proc/tst.exitcore.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/proc/tst.exitcore.c Fri May 26 19:11:24 2017 (r318964, copy of r318963, head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/proc/tst.exitcore.c) @@ -0,0 +1,36 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright 2017 Mark Johnston + */ + +#include + +int +main(int argc, char **argv) +{ + + for (;;) + sleep(1); + + return (0); +} Modified: projects/clang500-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/proc/tst.exitcore.ksh ============================================================================== --- projects/clang500-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/proc/tst.exitcore.ksh Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/proc/tst.exitcore.ksh Fri May 26 19:11:24 2017 (r318964) @@ -52,7 +52,7 @@ script() /curpsinfo->pr_ppid == $child && execargs == "$longsleep" && args[0] != CLD_DUMPED/ { - printf("Child process could did dump core."); + printf("Child process could not dump core."); exit(1); } EOF @@ -62,10 +62,9 @@ sleeper() { while true; do $longsleep & - /bin/sleep 1 + /bin/sleep 1 kill -SEGV $! done - /bin/rm -f $corefile } if [ $# != 1 ]; then @@ -74,8 +73,7 @@ if [ $# != 1 ]; then fi dtrace=$1 -longsleep="/bin/sleep 10000" -corefile=/tmp/sleep.core +longsleep="./tst.exitcore.exe" sleeper & child=$! @@ -83,10 +81,6 @@ child=$! script status=$? -#pstop $child -#pkill -P $child kill $child -#prun $child -/bin/rm -f $corefile exit $status Modified: projects/clang500-import/cddl/contrib/opensolaris/cmd/zdb/zdb.c ============================================================================== --- projects/clang500-import/cddl/contrib/opensolaris/cmd/zdb/zdb.c Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/cddl/contrib/opensolaris/cmd/zdb/zdb.c Fri May 26 19:11:24 2017 (r318964) @@ -75,10 +75,12 @@ DMU_OT_ZAP_OTHER : DMU_OT_NUMTYPES)) #ifndef lint +extern int reference_tracking_enable; extern boolean_t zfs_recover; extern uint64_t zfs_arc_max, zfs_arc_meta_limit; extern int zfs_vdev_async_read_max_active; #else +int reference_tracking_enable; boolean_t zfs_recover; uint64_t zfs_arc_max, zfs_arc_meta_limit; int zfs_vdev_async_read_max_active; @@ -3696,6 +3698,11 @@ main(int argc, char **argv) */ zfs_vdev_async_read_max_active = 10; + /* + * Disable reference tracking for better performance. + */ + reference_tracking_enable = B_FALSE; + kernel_init(FREAD); g_zfs = libzfs_init(); if (g_zfs == NULL) Modified: projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_impl.h ============================================================================== --- projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_impl.h Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_impl.h Fri May 26 19:11:24 2017 (r318964) @@ -132,6 +132,8 @@ typedef enum { SHARED_SMB = 0x4 } zfs_share_type_t; +#define CONFIG_BUF_MINSIZE 65536 + int zfs_error(libzfs_handle_t *, int, const char *); int zfs_error_fmt(libzfs_handle_t *, int, const char *, ...); void zfs_error_aux(libzfs_handle_t *, const char *, ...); Modified: projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_import.c ============================================================================== --- projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_import.c Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_import.c Fri May 26 19:11:24 2017 (r318964) @@ -21,7 +21,7 @@ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright (c) 2012, 2015 by Delphix. All rights reserved. + * Copyright (c) 2012, 2016 by Delphix. All rights reserved. * Copyright 2015 RackTop Systems. * Copyright 2016 Nexenta Systems, Inc. */ @@ -379,13 +379,14 @@ refresh_config(libzfs_handle_t *hdl, nvl { nvlist_t *nvl; zfs_cmd_t zc = { 0 }; - int err; + int err, dstbuf_size; if (zcmd_write_conf_nvlist(hdl, &zc, config) != 0) return (NULL); - if (zcmd_alloc_dst_nvlist(hdl, &zc, - zc.zc_nvlist_conf_size * 2) != 0) { + dstbuf_size = MAX(CONFIG_BUF_MINSIZE, zc.zc_nvlist_conf_size * 4); + + if (zcmd_alloc_dst_nvlist(hdl, &zc, dstbuf_size) != 0) { zcmd_free_nvlists(&zc); return (NULL); } Modified: projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c ============================================================================== --- projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c Fri May 26 19:11:24 2017 (r318964) @@ -2800,7 +2800,7 @@ zfs_receive_package(libzfs_handle_t *hdl goto out; } - if (fromsnap != NULL) { + if (fromsnap != NULL && recursive) { nvlist_t *renamed = NULL; nvpair_t *pair = NULL; @@ -2827,7 +2827,7 @@ zfs_receive_package(libzfs_handle_t *hdl *strchr(tofs, '@') = '\0'; } - if (recursive && !flags->dryrun && !flags->nomount) { + if (!flags->dryrun && !flags->nomount) { VERIFY(0 == nvlist_alloc(&renamed, NV_UNIQUE_NAME, 0)); } @@ -2896,7 +2896,7 @@ zfs_receive_package(libzfs_handle_t *hdl anyerr |= error; } while (error == 0); - if (drr->drr_payloadlen != 0 && fromsnap != NULL) { + if (drr->drr_payloadlen != 0 && recursive && fromsnap != NULL) { /* * Now that we have the fs's they sent us, try the * renames again. Modified: projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs_core/common/libzfs_core.c ============================================================================== --- projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs_core/common/libzfs_core.c Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/cddl/contrib/opensolaris/lib/libzfs_core/common/libzfs_core.c Fri May 26 19:11:24 2017 (r318964) @@ -759,6 +759,8 @@ lzc_rollback(const char *fsname, char *s const char *snapname = fnvlist_lookup_string(result, "target"); (void) strlcpy(snapnamebuf, snapname, snapnamelen); } + nvlist_free(result); + return (err); } Modified: projects/clang500-import/cddl/lib/libzfs/Makefile ============================================================================== --- projects/clang500-import/cddl/lib/libzfs/Makefile Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/cddl/lib/libzfs/Makefile Fri May 26 19:11:24 2017 (r318964) @@ -37,6 +37,7 @@ SRCS+= libzfs_changelist.c \ zprop_common.c \ WARNS?= 0 +SHLIB_MAJOR= 3 CSTD= c99 CFLAGS+= -DZFS_NO_ACL CFLAGS+= -I${SRCTOP}/sbin/mount Modified: projects/clang500-import/cddl/usr.sbin/dtrace/tests/common/proc/Makefile ============================================================================== --- projects/clang500-import/cddl/usr.sbin/dtrace/tests/common/proc/Makefile Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/cddl/usr.sbin/dtrace/tests/common/proc/Makefile Fri May 26 19:11:24 2017 (r318964) @@ -23,6 +23,7 @@ TESTEXES= \ CFILES= \ + tst.exitcore.c \ tst.sigwait.c \ Modified: projects/clang500-import/contrib/binutils/bfd/config.bfd ============================================================================== --- projects/clang500-import/contrib/binutils/bfd/config.bfd Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/binutils/bfd/config.bfd Fri May 26 19:11:24 2017 (r318964) @@ -1156,13 +1156,13 @@ case "${targ}" in targ_selvecs="bfd_powerpcle_pei_vec bfd_powerpc_pei_vec bfd_powerpcle_pe_vec bfd_powerpc_pe_vec" ;; - s390-*-linux*) + s390-*-freebsd* | s390-*-linux*) targ_defvec=bfd_elf32_s390_vec targ64_selvecs=bfd_elf64_s390_vec want64=true ;; #ifdef BFD64 - s390x-*-linux*) + s390x-*-freebsd* | s390x-*-linux*) targ_defvec=bfd_elf64_s390_vec targ_selvecs=bfd_elf32_s390_vec want64=true Modified: projects/clang500-import/contrib/binutils/ld/configure.tgt ============================================================================== --- projects/clang500-import/contrib/binutils/ld/configure.tgt Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/binutils/ld/configure.tgt Fri May 26 19:11:24 2017 (r318964) @@ -480,12 +480,21 @@ powerpc-*-lynxos*) targ_emul=ppclynx ;; rs6000-*-aix5*) targ_emul=aix5rs6 ;; rs6000-*-aix*) targ_emul=aixrs6 ;; +s390x-*-freebsd*) targ_emul=elf64_s390 + targ_extra_emuls=elf_s390 + targ_extra_libpath=$targ_extra_emuls + tdir_elf_s390=`echo ${targ_alias} | sed -e 's/s390x/s390/'` ;; s390x-*-linux*) targ_emul=elf64_s390 targ_extra_emuls=elf_s390 targ_extra_libpath=$targ_extra_emuls tdir_elf_s390=`echo ${targ_alias} | sed -e 's/s390x/s390/'` ;; s390x-*-tpf*) targ_emul=elf64_s390 tdir_elf_s390=`echo ${targ_alias} | sed -e 's/s390x/s390/'` ;; +s390-*-freebsd*) targ_emul=elf_s390 + targ64_extra_emuls=elf64_s390 + targ64_extra_libpath=elf64_s390 + tdir_elf64_s390=`echo ${targ_alias} | sed -e 's/s390/s390x/'` + ;; s390-*-linux*) targ_emul=elf_s390 targ64_extra_emuls=elf64_s390 targ64_extra_libpath=elf64_s390 Copied: projects/clang500-import/contrib/binutils/ld/emulparams/elf64_s390_fbsd.sh (from r318963, head/contrib/binutils/ld/emulparams/elf64_s390_fbsd.sh) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/contrib/binutils/ld/emulparams/elf64_s390_fbsd.sh Fri May 26 19:11:24 2017 (r318964, copy of r318963, head/contrib/binutils/ld/emulparams/elf64_s390_fbsd.sh) @@ -0,0 +1,2 @@ +. ${srcdir}/emulparams/elf64_s390.sh +. ${srcdir}/emulparams/elf_fbsd.sh Copied: projects/clang500-import/contrib/binutils/ld/emulparams/elf_s390_fbsd.sh (from r318963, head/contrib/binutils/ld/emulparams/elf_s390_fbsd.sh) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/contrib/binutils/ld/emulparams/elf_s390_fbsd.sh Fri May 26 19:11:24 2017 (r318964, copy of r318963, head/contrib/binutils/ld/emulparams/elf_s390_fbsd.sh) @@ -0,0 +1,2 @@ +. ${srcdir}/emulparams/elf_s390.sh +. ${srcdir}/emulparams/elf_fbsd.sh Modified: projects/clang500-import/contrib/blacklist/bin/blacklistd.c ============================================================================== --- projects/clang500-import/contrib/blacklist/bin/blacklistd.c Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/blacklist/bin/blacklistd.c Fri May 26 19:11:24 2017 (r318964) @@ -214,6 +214,17 @@ process(bl_t bl) } switch (bi->bi_type) { + case BL_ABUSE: + /* + * If the application has signaled abusive behavior, + * set the number of fails to be one less than the + * configured limit. Fallthrough to the normal BL_ADD + * processing, which will increment the failure count + * to the threshhold, and block the abusive address. + */ + if (c.c_nfail != -1) + dbi.count = c.c_nfail - 1; + /*FALLTHROUGH*/ case BL_ADD: dbi.count++; dbi.last = ts.tv_sec; @@ -249,6 +260,9 @@ process(bl_t bl) dbi.count = 0; dbi.last = 0; break; + case BL_BADUSER: + /* ignore for now */ + break; default: (*lfun)(LOG_ERR, "unknown message %d", bi->bi_type); } Modified: projects/clang500-import/contrib/blacklist/include/bl.h ============================================================================== --- projects/clang500-import/contrib/blacklist/include/bl.h Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/blacklist/include/bl.h Fri May 26 19:11:24 2017 (r318964) @@ -40,7 +40,9 @@ typedef enum { BL_INVALID, BL_ADD, - BL_DELETE + BL_DELETE, + BL_ABUSE, + BL_BADUSER } bl_type_t; typedef struct { Modified: projects/clang500-import/contrib/blacklist/include/blacklist.h ============================================================================== --- projects/clang500-import/contrib/blacklist/include/blacklist.h Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/blacklist/include/blacklist.h Fri May 26 19:11:24 2017 (r318964) @@ -43,4 +43,13 @@ int blacklist_sa_r(struct blacklist *, i const struct sockaddr *, socklen_t, const char *); __END_DECLS +/* action values for user applications */ +#define BLACKLIST_API_ENUM 1 +enum { + BLACKLIST_AUTH_OK = 0, + BLACKLIST_AUTH_FAIL, + BLACKLIST_ABUSIVE_BEHAVIOR, + BLACKLIST_BAD_USER +}; + #endif /* _BLACKLIST_H */ Modified: projects/clang500-import/contrib/blacklist/lib/blacklist.c ============================================================================== --- projects/clang500-import/contrib/blacklist/lib/blacklist.c Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/blacklist/lib/blacklist.c Fri May 26 19:11:24 2017 (r318964) @@ -61,7 +61,27 @@ int blacklist_sa_r(struct blacklist *bl, int action, int rfd, const struct sockaddr *sa, socklen_t slen, const char *msg) { - return bl_send(bl, action ? BL_ADD : BL_DELETE, rfd, sa, slen, msg); + int internal_action; + + /* internal values are not the same as user application values */ + switch (action) { + case BLACKLIST_AUTH_FAIL: + internal_action = BL_ADD; + break; + case BLACKLIST_AUTH_OK: + internal_action = BL_DELETE; + break; + case BLACKLIST_ABUSIVE_BEHAVIOR: + internal_action = BL_ABUSE; + break; + case BLACKLIST_BAD_USER: + internal_action = BL_BADUSER; + break; + default: + internal_action = BL_INVALID; + break; + } + return bl_send(bl, internal_action, rfd, sa, slen, msg); } int Modified: projects/clang500-import/contrib/blacklist/lib/libblacklist.3 ============================================================================== --- projects/clang500-import/contrib/blacklist/lib/libblacklist.3 Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/blacklist/lib/libblacklist.3 Fri May 26 19:11:24 2017 (r318964) @@ -27,7 +27,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd January 22, 2015 +.Dd May 5, 2017 .Dt LIBBLACKLIST 3 .Os .Sh NAME @@ -76,13 +76,9 @@ The .Fn blacklist function sends a message to .Xr blacklistd 8 , -with an +with an integer .Ar action -argument specifying -.Dv 1 -for a failed connection or -.Dv 0 -for a successful connection, +argument specifying the type of notification, a file descriptor .Ar fd specifying the accepted file descriptor connected to the client, @@ -91,6 +87,30 @@ and an optional message in the argument. .Pp The +.Ar action +parameter can take these values: +.Bl -tag -width ".Va BLACKLIST_ABUSIVE_BEHAVIOR" +.It Va BLACKLIST_AUTH_FAIL +There was an unsuccessful authentication attempt. +.It Va BLACKLIST_AUTH_OK +A user successfully authenticated. +.It Va BLACKLIST_ABUSIVE_BEHAVIOR +The sending daemon has detected abusive behavior +from the remote system. The remote address should +be blocked as soon as possible. +.It Va BLACKLIST_BAD_USER +The sending daemon has determined the username +presented for authentication is invalid. The +.Xr blacklistd 8 +daemon compares the username to a configured list of forbidden +usernames and +blocks the address immediately if a forbidden username matches. +(The +.Ar BLACKLIST_BAD_USER +support is not currently available.) +.El +.Pp +The .Fn blacklist_r function is more efficient because it keeps the blacklist state around. .Pp @@ -102,8 +122,13 @@ functions can be used with unconnected s .Xr getpeername 2 will not work, the server will pass the peer name in the message. .Pp -All functions log errors to -.Xr syslogd 8 . +By default, +.Xr syslogd 8 +is used for message logging. +The internal +.Fn bl_create +function can be used to create the required internal +state and specify a custom logging function. .Sh RETURN VALUES The function .Fn blacklist_open Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_linux.cc Fri May 26 19:11:24 2017 (r318964) @@ -237,7 +237,8 @@ static void kernel_stat_to_stat(struct k uptr internal_stat(const char *path, void *buf) { #if SANITIZER_FREEBSD - return internal_syscall(SYSCALL(stat), path, buf); + return internal_syscall(SYSCALL(fstatat), AT_FDCWD, (uptr)path, + (uptr)buf, 0); #elif SANITIZER_USES_CANONICAL_LINUX_SYSCALLS return internal_syscall(SYSCALL(newfstatat), AT_FDCWD, (uptr)path, (uptr)buf, 0); @@ -261,7 +262,8 @@ uptr internal_stat(const char *path, voi uptr internal_lstat(const char *path, void *buf) { #if SANITIZER_FREEBSD - return internal_syscall(SYSCALL(lstat), path, buf); + return internal_syscall(SYSCALL(fstatat), AT_FDCWD, (uptr)path, + (uptr)buf, AT_SYMLINK_NOFOLLOW); #elif SANITIZER_USES_CANONICAL_LINUX_SYSCALLS return internal_syscall(SYSCALL(newfstatat), AT_FDCWD, (uptr)path, (uptr)buf, AT_SYMLINK_NOFOLLOW); @@ -604,7 +606,9 @@ uptr internal_getppid() { } uptr internal_getdents(fd_t fd, struct linux_dirent *dirp, unsigned int count) { -#if SANITIZER_USES_CANONICAL_LINUX_SYSCALLS +#if SANITIZER_FREEBSD + return internal_syscall(SYSCALL(getdirentries), fd, (uptr)dirp, count, NULL); +#elif SANITIZER_USES_CANONICAL_LINUX_SYSCALLS return internal_syscall(SYSCALL(getdents64), fd, (uptr)dirp, count); #else return internal_syscall(SYSCALL(getdents), fd, (uptr)dirp, count); Modified: projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h ============================================================================== --- projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h Fri May 26 19:11:24 2017 (r318964) @@ -489,7 +489,8 @@ namespace __sanitizer { }; #elif SANITIZER_FREEBSD struct __sanitizer_dirent { - unsigned int d_fileno; + unsigned long long d_fileno; + unsigned long long d_off; unsigned short d_reclen; // more fields that we don't care about }; Modified: projects/clang500-import/contrib/gcc/config.gcc ============================================================================== --- projects/clang500-import/contrib/gcc/config.gcc Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/gcc/config.gcc Fri May 26 19:11:24 2017 (r318964) @@ -1942,10 +1942,19 @@ rs6000-ibm-aix[56789].* | powerpc-ibm-ai thread_file='aix' extra_headers= ;; +s390-*-freebsd*) + tm_file="${tm_file} dbxelf.h elfos.h ${fbsd_tm_file} s390/freebsd.h" + ;; s390-*-linux*) tm_file="s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h" tmake_file="${tmake_file} t-dfprules s390/t-crtstuff s390/t-linux" ;; +s390x-*-freebsd*) + tm_file="s390/s390.h s390/s390x.h dbxelf.h elfos.h ${fbsd_tm_file} s390/freebsd.h" + tm_p_file=s390/s390-protos.h + md_file=s390/s390.md + out_file=s390/s390.c + ;; s390x-*-linux*) tm_file="s390/s390x.h s390/s390.h dbxelf.h elfos.h svr4.h linux.h s390/linux.h" tm_p_file=s390/s390-protos.h Copied: projects/clang500-import/contrib/gcc/config/s390/freebsd.h (from r318963, head/contrib/gcc/config/s390/freebsd.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/clang500-import/contrib/gcc/config/s390/freebsd.h Fri May 26 19:11:24 2017 (r318964, copy of r318963, head/contrib/gcc/config/s390/freebsd.h) @@ -0,0 +1,105 @@ +/* Definitions for FreeBSD for S/390. + Copyright (C) 1999, 2000, 2001, 2002, 2004, 2005, 2006 + Free Software Foundation, Inc. + Contributed by Hartmut Penner (hpenner@de.ibm.com) and + Ulrich Weigand (uweigand@de.ibm.com). + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +GCC is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with GCC; see the file COPYING. If not, write to the Free +Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA +02110-1301, USA. */ + +#ifndef _CONFIG_S390_FREEBSD_H +#define _CONFIG_S390_FREEBSD_H + +/* Target specific version string. */ + +#ifdef DEFAULT_TARGET_64BIT +#undef TARGET_VERSION +#define TARGET_VERSION fprintf (stderr, " (FreeBSD for zSeries)"); +#else +#undef TARGET_VERSION +#define TARGET_VERSION fprintf (stderr, " (FreeBSD for S/390)"); +#endif + + +/* Target specific type definitions. */ + +/* ??? Do we really want long as size_t on 31-bit? */ +/* Answer is yes for FreeBSD. */ +#undef SIZE_TYPE +#define SIZE_TYPE (TARGET_64BIT ? "long unsigned int" : "unsigned int") +#undef PTRDIFF_TYPE +#define PTRDIFF_TYPE (TARGET_64BIT ? "long int" : "int") + +#undef WCHAR_TYPE +#define WCHAR_TYPE "int" +#undef WCHAR_TYPE_SIZE +#define WCHAR_TYPE_SIZE 32 + +#undef DEFAULT_SIGNED_CHAR +#define DEFAULT_SIGNED_CHAR 1 + +/* Target specific assembler settings. */ + +#undef ASM_SPEC +#define ASM_SPEC "%{m31&m64}%{mesa&mzarch}%{march=*}" + + +/* Target specific linker settings. */ + +#ifdef DEFAULT_TARGET_64BIT +#define MULTILIB_DEFAULTS { "m64" } +#else +#define MULTILIB_DEFAULTS { "m31" } +#endif + +#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" +#define GLIBC_DYNAMIC_LINKER64 "/lib/ld64.so.1" + +#undef LINK_SPEC +#define LINK_SPEC \ + "%{m31:-m elf_s390}%{m64:-m elf64_s390} \ + %{shared:-shared} \ + %{!shared: \ + %{static:-static} \ + %{!static: \ + %{rdynamic:-export-dynamic} \ + %{!dynamic-linker: \ + %{m31:-dynamic-linker " LINUX_DYNAMIC_LINKER32 "} \ + %{m64:-dynamic-linker " LINUX_DYNAMIC_LINKER64 "}}}}" + +#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}" + +#define TARGET_ASM_FILE_END file_end_indicate_exec_stack + +#define MD_UNWIND_SUPPORT "config/s390/freebsd-unwind.h" + +#ifdef TARGET_LIBC_PROVIDES_SSP +/* s390 glibc provides __stack_chk_guard in 0x14(tp), + s390x glibc provides it at 0x28(tp). */ +#define TARGET_THREAD_SSP_OFFSET (TARGET_64BIT ? 0x28 : 0x14) +#endif + +/* Define if long doubles should be mangled as 'g'. */ +#define TARGET_ALTERNATE_LONG_DOUBLE_MANGLING + +/* Override the default comment-starter of "/APP" from unix.h. */ +#undef ASM_APP_ON +#define ASM_APP_ON "#APP\n" +#undef ASM_APP_OFF +#define ASM_APP_OFF "#NO_APP\n" + +#endif Modified: projects/clang500-import/contrib/libc-vis/vis.3 ============================================================================== --- projects/clang500-import/contrib/libc-vis/vis.3 Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/libc-vis/vis.3 Fri May 26 19:11:24 2017 (r318964) @@ -373,7 +373,6 @@ space. .It Dv \e240 Represents Meta-space. .El -.Pp .It Dv VIS_CSTYLE Use C-style backslash sequences to represent standard non-printable characters. Modified: 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.cpp Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp Fri May 26 19:11:24 2017 (r318964) @@ -1132,6 +1132,8 @@ ProcessMessage ProcessMonitor::MonitorSI case 0: case TRAP_TRACE: + // Map TRAP_CAP to a trace trap in the absense of a more specific handler. + case TRAP_CAP: if (log) log->Printf("ProcessMonitor::%s() received trace event, tid = %" PRIu64 " : si_code = %d", Modified: projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh ============================================================================== --- projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh Fri May 26 19:11:24 2017 (r318964) @@ -627,6 +627,46 @@ binary_flags_body() atf_check -o inline:"A\000B\000C\n" grep --binary-files=text 'B' test1 atf_check -s exit:1 grep --binary-files=without-match 'B' test2 } + +atf_test_case mmap +mmap_head() +{ + atf_set "descr" "Check basic matching with --mmap flag" +} +mmap_body() +{ + grep_type + if [ $? -eq $GREP_TYPE_GNU ]; then + atf_expect_fail "gnu grep from ports has no --mmap option" + fi + + printf "A\nB\nC\n" > test1 + + atf_check -s exit:0 -o inline:"B\n" grep --mmap -oe "B" test1 + atf_check -s exit:1 grep --mmap -e "Z" test1 +} + +atf_test_case mmap_eof_not_eol +mmap_eof_not_eol_head() +{ + atf_set "descr" "Check --mmap flag handling of encountering EOF without EOL (PR 165471, 219402)" +} +mmap_eof_not_eol_body() +{ + grep_type + if [ $? -eq $GREP_TYPE_GNU ]; then + atf_expect_fail "gnu grep from ports has no --mmap option" + fi + + printf "ABC" > test1 + jot -b " " -s "" 4096 >> test2 + + atf_check -s exit:0 -o inline:"B\n" grep --mmap -oe "B" test1 + # Dependency on jemalloc(3) to detect buffer overflow, otherwise this + # unreliably produces a SIGSEGV or SIGBUS + atf_check -s exit:0 -o not-empty \ + env MALLOC_CONF="redzone:true" grep --mmap -e " " test2 +} # End FreeBSD atf_init_test_cases() @@ -665,5 +705,7 @@ atf_init_test_cases() atf_add_test_case grep_nomatch_flags atf_add_test_case binary_flags atf_add_test_case badcontext + atf_add_test_case mmap + atf_add_test_case mmap_eof_not_eol # End FreeBSD } Modified: projects/clang500-import/contrib/openbsm/libbsm/bsm_wrappers.c ============================================================================== --- projects/clang500-import/contrib/openbsm/libbsm/bsm_wrappers.c Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/contrib/openbsm/libbsm/bsm_wrappers.c Fri May 26 19:11:24 2017 (r318964) @@ -264,12 +264,14 @@ audit_set_terminal_host(uint32_t *m) int audit_set_terminal_id(au_tid_t *tid) { + dev_t port; int ret; if (tid == NULL) return (kAUBadParamErr); - if ((ret = audit_set_terminal_port(&tid->port)) != kAUNoErr) + if ((ret = audit_set_terminal_port(&port)) != kAUNoErr) return (ret); + tid->port = port; return (audit_set_terminal_host(&tid->machine)); } Modified: projects/clang500-import/crypto/openssl/CHANGES ============================================================================== --- projects/clang500-import/crypto/openssl/CHANGES Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/crypto/openssl/CHANGES Fri May 26 19:11:24 2017 (r318964) @@ -2,6 +2,12 @@ OpenSSL CHANGES _______________ + Changes between 1.0.2k and 1.0.2l [25 May 2017] + + *) Have 'config' recognise 64-bit mingw and choose 'mingw64' as the target + platform rather than 'mingw'. + [Richard Levitte] + Changes between 1.0.2j and 1.0.2k [26 Jan 2017] *) Truncated packet could crash via OOB read Modified: projects/clang500-import/crypto/openssl/Configure ============================================================================== --- projects/clang500-import/crypto/openssl/Configure Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/crypto/openssl/Configure Fri May 26 19:11:24 2017 (r318964) @@ -109,7 +109,7 @@ my $usage="Usage: Configure [no- # Minimum warning options... any contributions to OpenSSL should at least get # past these. -my $gcc_devteam_warn = "-Wall -pedantic -DPEDANTIC -Wno-long-long -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Werror -DCRYPTO_MDEBUG_ALL -DCRYPTO_MDEBUG_ABORT -DREF_CHECK -DOPENSSL_NO_DEPRECATED"; +my $gcc_devteam_warn = "-Wall -pedantic -DPEDANTIC -Wno-long-long -Wsign-compare -Wmissing-prototypes -Wshadow -Wformat -Wundef -Werror -DCRYPTO_MDEBUG_ALL -DCRYPTO_MDEBUG_ABORT -DREF_CHECK -DOPENSSL_NO_DEPRECATED"; # TODO(openssl-team): fix problems and investigate if (at least) the following # warnings can also be enabled: @@ -2041,12 +2041,13 @@ EOF close(OUT); } else { my $make_command = "$make PERL=\'$perl\'"; - my $make_targets = ""; - $make_targets .= " links" if $symlink; - $make_targets .= " depend" if $depflags ne $default_depflags && $make_depend; - $make_targets .= " gentests" if $symlink; - (system $make_command.$make_targets) == 0 or exit $? - if $make_targets ne ""; + my @make_targets = (); + push @make_targets, "links" if $symlink; + push @make_targets, "depend" if $depflags ne $default_depflags && $make_depend; + push @make_targets, "gentests" if $symlink; + foreach my $make_target (@make_targets) { + (system "$make_command $make_target") == 0 or exit $?; + } if ( $perl =~ m@^/@) { &dofile("tools/c_rehash",$perl,'^#!/', '#!%s','^my \$dir;$', 'my $dir = "' . $openssldir . '";', '^my \$prefix;$', 'my $prefix = "' . $prefix . '";'); &dofile("apps/CA.pl",$perl,'^#!/', '#!%s'); @@ -2056,8 +2057,8 @@ EOF &dofile("apps/CA.pl",'/usr/local/bin/perl','^#!/', '#!%s'); } if ($depflags ne $default_depflags && !$make_depend) { - $warn_make_depend++; - } + $warn_make_depend++; + } } # create the ms/version32.rc file if needed Modified: projects/clang500-import/crypto/openssl/LICENSE ============================================================================== --- projects/clang500-import/crypto/openssl/LICENSE Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/crypto/openssl/LICENSE Fri May 26 19:11:24 2017 (r318964) @@ -2,7 +2,7 @@ LICENSE ISSUES ============== - The OpenSSL toolkit stays under a dual license, i.e. both the conditions of + The OpenSSL toolkit stays under a double license, i.e. both the conditions of the OpenSSL License and the original SSLeay license apply to the toolkit. See below for the actual license texts. Actually both licenses are BSD-style Open Source licenses. In case of any license issues related to OpenSSL @@ -12,7 +12,7 @@ --------------- /* ==================================================================== - * Copyright (c) 1998-2016 The OpenSSL Project. All rights reserved. + * Copyright (c) 1998-2017 The OpenSSL Project. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: projects/clang500-import/crypto/openssl/Makefile ============================================================================== --- projects/clang500-import/crypto/openssl/Makefile Fri May 26 19:02:46 2017 (r318963) +++ projects/clang500-import/crypto/openssl/Makefile Fri May 26 19:11:24 2017 (r318964) @@ -4,7 +4,7 @@ ## Makefile for OpenSSL ## -VERSION=1.0.2k +VERSION=1.0.2l *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Sat May 27 11:25:22 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 D9F5BD8416C for ; Sat, 27 May 2017 11:25:22 +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 A74BF1C6B; Sat, 27 May 2017 11:25:22 +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 v4RBPLDq067828; Sat, 27 May 2017 11:25:21 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v4RBPLeu067827; Sat, 27 May 2017 11:25:21 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201705271125.v4RBPLeu067827@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sat, 27 May 2017 11:25:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r318985 - projects/clang500-import/lib/clang/libllvm 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, 27 May 2017 11:25:22 -0000 Author: dim Date: Sat May 27 11:25:21 2017 New Revision: 318985 URL: https://svnweb.freebsd.org/changeset/base/318985 Log: Missed a few additional files in libllvm, for llvm-objdump and llvm-pdbdump. Modified: projects/clang500-import/lib/clang/libllvm/Makefile Modified: projects/clang500-import/lib/clang/libllvm/Makefile ============================================================================== --- projects/clang500-import/lib/clang/libllvm/Makefile Sat May 27 11:21:20 2017 (r318984) +++ projects/clang500-import/lib/clang/libllvm/Makefile Sat May 27 11:25:21 2017 (r318985) @@ -329,6 +329,7 @@ SRCS_MIN+= DebugInfo/CodeView/CodeViewEr SRCS_MIN+= DebugInfo/CodeView/CodeViewRecordIO.cpp SRCS_EXT+= DebugInfo/CodeView/EnumTables.cpp SRCS_MIN+= DebugInfo/CodeView/Formatters.cpp +SRCS_EXT+= DebugInfo/CodeView/LazyRandomTypeCollection.cpp SRCS_MIN+= DebugInfo/CodeView/Line.cpp SRCS_EXT+= DebugInfo/CodeView/ModuleDebugFileChecksumFragment.cpp SRCS_EXT+= DebugInfo/CodeView/ModuleDebugFragment.cpp @@ -616,6 +617,7 @@ SRCS_MIN+= Object/RecordStreamer.cpp SRCS_MIW+= Object/SymbolSize.cpp SRCS_MIN+= Object/SymbolicFile.cpp SRCS_MIN+= Object/WasmObjectFile.cpp +SRCS_MIW+= Object/WindowsResource.cpp SRCS_MIN+= ObjectYAML/COFFYAML.cpp SRCS_MIN+= ObjectYAML/DWARFYAML.cpp SRCS_MIN+= ObjectYAML/ELFYAML.cpp