git: 1f6fd64fe9c9 - stable/13 - Merge llvm-project main llvmorg-14-init-10223-g401b76fdf2b3
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 04 Jun 2022 12:00:57 UTC
The branch stable/13 has been updated by dim:
URL: https://cgit.FreeBSD.org/src/commit/?id=1f6fd64fe9c996b4795ee4a6c66b8f9216747560
commit 1f6fd64fe9c996b4795ee4a6c66b8f9216747560
Author: Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2021-11-20 17:39:12 +0000
Commit: Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2022-06-04 11:58:59 +0000
Merge llvm-project main llvmorg-14-init-10223-g401b76fdf2b3
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and
openmp to llvmorg-14-init-10223-g401b76fdf2b3.
PR: 261742
MFC after: 2 weeks
(cherry picked from commit 5e801ac66d24704442eba426ed13c3effb8a34e7)
---
ObsoleteFiles.inc | 301 ++
contrib/llvm-project/FREEBSD-Xlist | 23 +-
.../clang/include/clang/AST/Redeclarable.h | 3 +-
.../llvm-project/clang/include/clang/AST/Type.h | 6 +-
.../clang/include/clang/Analysis/CFG.h | 2 +-
.../llvm-project/clang/include/clang/Basic/Attr.td | 1 +
.../clang/include/clang/CodeGen/CGFunctionInfo.h | 2 +-
.../llvm-project/clang/include/clang/Sema/Lookup.h | 7 +-
contrib/llvm-project/clang/lib/AST/ASTContext.cpp | 3 +
.../llvm-project/clang/lib/Analysis/BodyFarm.cpp | 5 +-
.../clang/lib/Analysis/RetainSummaryManager.cpp | 2 +-
.../llvm-project/clang/lib/Basic/DiagnosticIDs.cpp | 2 +-
.../llvm-project/clang/lib/Basic/SourceManager.cpp | 11 +-
.../clang/lib/Driver/ToolChains/Clang.cpp | 1 -
contrib/llvm-project/clang/lib/Format/Format.cpp | 2 +-
.../clang/lib/Frontend/FrontendActions.cpp | 2 +-
.../llvm-project/clang/lib/Sema/SemaChecking.cpp | 7 +-
contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp | 8 +-
.../llvm-project/clang/lib/Sema/SemaDeclCXX.cpp | 5 +-
contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp | 1 -
.../llvm-project/clang/lib/Sema/SemaExprCXX.cpp | 5 +-
contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp | 4 +-
.../lib/StaticAnalyzer/Checkers/CStringChecker.cpp | 6 +-
.../lib/StaticAnalyzer/Checkers/MIGChecker.cpp | 2 +-
.../Checkers/StdLibraryFunctionsChecker.cpp | 6 +-
.../lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp | 5 +-
.../StaticAnalyzer/Core/BugReporterVisitors.cpp | 7 +-
.../clang/lib/StaticAnalyzer/Core/ExprEngine.cpp | 4 +-
.../clang/lib/StaticAnalyzer/Core/Store.cpp | 2 +-
.../llvm-project/clang/lib/Tooling/Syntax/Tree.cpp | 2 +-
.../clang-nvlink-wrapper/ClangNvlinkWrapper.cpp | 196 --
.../libcxx/include/__algorithm/binary_search.h | 2 +-
.../libcxx/include/__algorithm/is_heap.h | 4 +-
.../libcxx/include/__algorithm/is_heap_until.h | 21 +-
.../libcxx/include/__algorithm/is_sorted.h | 4 +-
.../libcxx/include/__algorithm/is_sorted_until.h | 19 +-
.../llvm-project/libcxx/include/__algorithm/max.h | 4 +-
.../libcxx/include/__algorithm/max_element.h | 21 +-
.../llvm-project/libcxx/include/__algorithm/min.h | 4 +-
.../libcxx/include/__algorithm/min_element.h | 21 +-
contrib/llvm-project/libcxx/include/version | 2 +-
.../llvm/ExecutionEngine/JITLink/JITLinkDylib.h | 13 +-
.../llvm/include/llvm/ExecutionEngine/Orc/Core.h | 10 +-
.../llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp | 8 +-
.../llvm/lib/ExecutionEngine/Orc/Core.cpp | 4 +-
.../Target/AMDGPU/MCTargetDesc/AMDGPUMCAsmInfo.cpp | 1 -
.../llvm/lib/Target/ARM/Thumb2SizeReduction.cpp | 2 +-
.../lib/Target/Hexagon/HexagonMachineScheduler.cpp | 2 +-
.../llvm/lib/Target/X86/X86ISelLowering.cpp | 6 +-
.../Transforms/Instrumentation/InstrProfiling.cpp | 2 +-
.../llvm/lib/Transforms/Utils/CloneModule.cpp | 72 +-
.../llvm/lib/Transforms/Utils/Evaluator.cpp | 5 +-
.../llvm/lib/Transforms/Utils/LoopSimplify.cpp | 13 +-
.../llvm/lib/Transforms/Utils/LoopUtils.cpp | 12 +-
.../llvm/lib/Transforms/Utils/MetaRenamer.cpp | 6 +-
.../llvm/lib/Transforms/Utils/VNCoercion.cpp | 14 +-
etc/mtree/BSD.debug.dist | 2 +-
etc/mtree/BSD.include.dist | 12 +
etc/mtree/BSD.usr.dist | 2 +-
lib/clang/freebsd_cc_version.h | 2 +-
lib/clang/headers/Makefile | 6 +-
lib/clang/include/VCSVersion.inc | 14 +-
lib/clang/include/clang/Basic/Version.inc | 6 +-
lib/clang/include/clang/Config/config.h | 2 +-
lib/clang/include/lld/Common/Version.inc | 2 +-
lib/clang/include/lldb/Host/Config.h | 5 -
lib/clang/include/llvm/Config/TargetMCAs.def | 7 +
lib/clang/include/llvm/Config/config.h | 18 +-
lib/clang/include/llvm/Config/llvm-config.h | 15 +-
lib/clang/include/llvm/Support/VCSRevision.h | 4 +-
lib/clang/libclang/Makefile | 4 +-
lib/clang/liblldb/LLDBWrapLua.cpp | 3243 ++++++++++++--------
lib/clang/liblldb/Makefile | 9 +-
lib/clang/libllvm/Makefile | 46 +-
lib/libc++/Makefile | 104 +-
lib/libc++/__config_site | 5 +-
lib/libclang_rt/asan/Makefile | 2 +-
lib/libclang_rt/asan_dynamic/Makefile | 2 +-
lib/libclang_rt/cfi/Makefile | 1 -
lib/libclang_rt/cfi_diag/Makefile | 2 +-
lib/libclang_rt/compiler-rt-vars.mk | 2 +-
lib/libclang_rt/dd/Makefile | 1 -
lib/libclang_rt/msan/Makefile | 2 +-
lib/libclang_rt/stats/Makefile | 2 +-
lib/libclang_rt/tsan/Makefile | 4 +-
lib/libclang_rt/ubsan_standalone/Makefile | 2 +-
lib/libclang_rt/xray/Makefile | 1 -
lib/libomp/kmp_config.h | 15 +
lib/libomp/kmp_i18n_default.inc | 8 +-
lib/libomp/kmp_i18n_id.inc | 6 +-
lib/libomp/omp.h | 11 +-
tools/build/mk/OptionalObsoleteFiles.inc | 666 ++--
usr.bin/clang/llvm-diff/Makefile | 6 +-
usr.bin/clang/llvm-mca/Makefile | 1 -
usr.bin/clang/llvm-tblgen/Makefile | 2 +-
95 files changed, 3048 insertions(+), 2101 deletions(-)
diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc
index 0b70ebf521fb..200934b0cb08 100644
--- a/ObsoleteFiles.inc
+++ b/ObsoleteFiles.inc
@@ -36,6 +36,307 @@
# xargs -n1 | sort | uniq -d;
# done
+# 20220604: new clang import which bumps version from 13.0.0 to 14.0.0
+OLD_FILES+=usr/lib/clang/13.0.0/include/cuda_wrappers/algorithm
+OLD_FILES+=usr/lib/clang/13.0.0/include/cuda_wrappers/complex
+OLD_FILES+=usr/lib/clang/13.0.0/include/cuda_wrappers/new
+OLD_DIRS+=usr/lib/clang/13.0.0/include/cuda_wrappers
+OLD_FILES+=usr/lib/clang/13.0.0/include/fuzzer/FuzzedDataProvider.h
+OLD_DIRS+=usr/lib/clang/13.0.0/include/fuzzer
+OLD_FILES+=usr/lib/clang/13.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/openmp_wrappers/cmath
+OLD_FILES+=usr/lib/clang/13.0.0/include/openmp_wrappers/complex
+OLD_FILES+=usr/lib/clang/13.0.0/include/openmp_wrappers/complex.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/openmp_wrappers/complex_cmath.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/openmp_wrappers/math.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/openmp_wrappers/new
+OLD_DIRS+=usr/lib/clang/13.0.0/include/openmp_wrappers
+OLD_FILES+=usr/lib/clang/13.0.0/include/ppc_wrappers/emmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/ppc_wrappers/mm_malloc.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/ppc_wrappers/mmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/ppc_wrappers/pmmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/ppc_wrappers/smmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/ppc_wrappers/tmmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/ppc_wrappers/xmmintrin.h
+OLD_DIRS+=usr/lib/clang/13.0.0/include/ppc_wrappers
+OLD_FILES+=usr/lib/clang/13.0.0/include/profile/InstrProfData.inc
+OLD_DIRS+=usr/lib/clang/13.0.0/include/profile
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/allocator_interface.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/asan_interface.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/common_interface_defs.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/coverage_interface.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/dfsan_interface.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/hwasan_interface.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/linux_syscall_hooks.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/lsan_interface.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/msan_interface.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/netbsd_syscall_hooks.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/scudo_interface.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/tsan_interface.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/tsan_interface_atomic.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sanitizer/ubsan_interface.h
+OLD_DIRS+=usr/lib/clang/13.0.0/include/sanitizer
+OLD_FILES+=usr/lib/clang/13.0.0/include/xray/xray_interface.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/xray/xray_log_interface.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/xray/xray_records.h
+OLD_DIRS+=usr/lib/clang/13.0.0/include/xray
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_cuda_builtin_vars.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_cuda_cmath.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_cuda_complex_builtins.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_cuda_device_functions.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_cuda_intrinsics.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_cuda_libdevice_declares.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_cuda_math.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_cuda_math_forward_declares.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_cuda_runtime_wrapper.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_hip_cmath.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_hip_libdevice_declares.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_hip_math.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__clang_hip_runtime_wrapper.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__stddef_max_align_t.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__wmmintrin_aes.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/__wmmintrin_pclmul.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/adxintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/altivec.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/ammintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/amxintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/arm64intr.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/arm_acle.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/arm_bf16.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/arm_cde.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/arm_cmse.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/arm_fp16.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/arm_mve.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/arm_neon.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/arm_sve.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/armintr.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx2intrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512bf16intrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512bitalgintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512bwintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512cdintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512dqintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512erintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512fintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512ifmaintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512ifmavlintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512pfintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vbmi2intrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vbmiintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vbmivlintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vlbf16intrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vlbitalgintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vlbwintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vlcdintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vldqintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vlintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vlvbmi2intrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vlvnniintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vlvp2intersectintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vnniintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vp2intersectintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vpopcntdqintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avx512vpopcntdqvlintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avxintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/avxvnniintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/bmi2intrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/bmiintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/builtins.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/cet.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/cetintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/cldemoteintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/clflushoptintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/clwbintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/clzerointrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/cpuid.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/emmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/enqcmdintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/f16cintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/float.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/fma4intrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/fmaintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/fxsrintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/gfniintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/hexagon_circ_brev_intrinsics.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/hexagon_protos.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/hexagon_types.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/hresetintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/htmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/htmxlintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/hvx_hexagon_protos.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/ia32intrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/immintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/intrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/inttypes.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/invpcidintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/iso646.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/keylockerintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/limits.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/lwpintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/lzcntintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/mm3dnow.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/mm_malloc.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/mmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/module.modulemap
+OLD_FILES+=usr/lib/clang/13.0.0/include/movdirintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/msa.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/mwaitxintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/nmmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/omp-tools.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/omp.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/ompt.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/opencl-c-base.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/opencl-c.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/pconfigintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/pkuintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/pmmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/popcntintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/prfchwintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/ptwriteintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/rdseedintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/riscv_vector.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/rtmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/s390intrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/serializeintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/sgxintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/shaintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/smmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/stdalign.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/stdarg.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/stdatomic.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/stdbool.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/stddef.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/stdint.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/stdnoreturn.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/tbmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/tgmath.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/tmmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/tsxldtrkintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/uintrintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/unwind.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/vadefs.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/vaesintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/varargs.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/vecintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/vpclmulqdqintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/waitpkgintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/wasm_simd128.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/wbnoinvdintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/wmmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/x86gprintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/x86intrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/xmmintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/xopintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/xsavecintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/xsaveintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/xsaveoptintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/xsavesintrin.h
+OLD_FILES+=usr/lib/clang/13.0.0/include/xtestintrin.h
+OLD_DIRS+=usr/lib/clang/13.0.0/include
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-aarch64.so
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-arm.so
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-armhf.so
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-i386.so
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-preinit-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-preinit-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-preinit-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-preinit-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-preinit-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan-x86_64.so
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan_cxx-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan_cxx-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan_cxx-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan_cxx-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.asan_cxx-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.cfi-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.cfi-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.cfi-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.cfi-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.cfi-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.cfi_diag-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.cfi_diag-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.cfi_diag-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.cfi_diag-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.cfi_diag-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.dd-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.dd-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.fuzzer-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.fuzzer-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.fuzzer_no_main-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.fuzzer_no_main-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.msan-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.msan-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.msan_cxx-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.msan_cxx-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.profile-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.profile-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.profile-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.profile-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.profile-powerpc.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.profile-powerpc64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.profile-powerpc64le.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.profile-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.safestack-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.safestack-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.safestack-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.stats-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.stats-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.stats-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.stats-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.stats-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.stats_client-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.stats_client-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.stats_client-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.stats_client-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.stats_client-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.tsan-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.tsan-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.tsan_cxx-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.tsan_cxx-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_minimal-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_minimal-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_minimal-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_minimal-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_minimal-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_standalone-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_standalone-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_standalone-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_standalone-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_standalone-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_standalone_cxx-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_standalone_cxx-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_standalone_cxx-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_standalone_cxx-i386.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.ubsan_standalone_cxx-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-basic-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-basic-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-basic-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-basic-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-fdr-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-fdr-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-fdr-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-fdr-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-profiling-aarch64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-profiling-arm.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-profiling-armhf.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-profiling-x86_64.a
+OLD_FILES+=usr/lib/clang/13.0.0/lib/freebsd/libclang_rt.xray-x86_64.a
+OLD_DIRS+=usr/lib/clang/13.0.0/lib/freebsd
+OLD_DIRS+=usr/lib/clang/13.0.0/lib
+OLD_DIRS+=usr/lib/clang/13.0.0
+
+# 20220604: new libc++ import which bumps version from 13.0.0 to 14.0.0
+OLD_FILES+=usr/include/c++/v1/__memory/pointer_safety.h
+OLD_FILES+=usr/include/c++/v1/__utility/__decay_copy.h
+
# 20220220: unwind.h moved to /usr/include
OLD_FILES+=usr/include/c++/v1/unwind-arm.h
OLD_FILES+=usr/include/c++/v1/unwind-itanium.h
diff --git a/contrib/llvm-project/FREEBSD-Xlist b/contrib/llvm-project/FREEBSD-Xlist
index 83ef7e63ffec..a1b16e75a5b8 100644
--- a/contrib/llvm-project/FREEBSD-Xlist
+++ b/contrib/llvm-project/FREEBSD-Xlist
@@ -105,6 +105,7 @@ clang/tools/clang-format/git-clang-format
clang/tools/clang-format-vs/
clang/tools/clang-fuzzer/
clang/tools/clang-import-test/
+clang/tools/clang-nvlink-wrapper/
clang/tools/clang-offload-bundler/
clang/tools/clang-offload-wrapper/
clang/tools/clang-refactor/
@@ -149,6 +150,7 @@ clang/utils/token-delta.py
clang/utils/valgrind/
clang/www/
clang-tools-extra/
+cmake/
compiler-rt/.gitignore
compiler-rt/CMakeLists.txt
compiler-rt/CODE_OWNERS.TXT
@@ -187,6 +189,7 @@ compiler-rt/lib/interception/tests/
compiler-rt/lib/lsan/.clang-format
compiler-rt/lib/lsan/CMakeLists.txt
compiler-rt/lib/memprof/CMakeLists.txt
+compiler-rt/lib/memprof/tests/CMakeLists.txt
compiler-rt/lib/msan/.clang-format
compiler-rt/lib/msan/CMakeLists.txt
compiler-rt/lib/msan/tests/
@@ -229,6 +232,7 @@ flang/
libc/
libclc/
libcxx/.clang-format
+libcxx/.clang-tidy
libcxx/.gitignore
libcxx/CMakeLists.txt
libcxx/TODO.TXT
@@ -280,6 +284,7 @@ lldb/CODE_OWNERS.txt
lldb/bindings/CMakeLists.txt
lldb/bindings/lua/CMakeLists.txt
lldb/bindings/python/CMakeLists.txt
+lldb/bindings/python/get-python-config.py
lldb/cmake/
lldb/docs/.htaccess
lldb/docs/CMakeLists.txt
@@ -379,6 +384,7 @@ lldb/source/Plugins/ObjectFile/CMakeLists.txt
lldb/source/Plugins/ObjectFile/ELF/CMakeLists.txt
lldb/source/Plugins/ObjectFile/JIT/CMakeLists.txt
lldb/source/Plugins/ObjectFile/Mach-O/
+lldb/source/Plugins/ObjectFile/Minidump/CMakeLists.txt
lldb/source/Plugins/ObjectFile/PDB/CMakeLists.txt
lldb/source/Plugins/ObjectFile/PECOFF/
lldb/source/Plugins/ObjectFile/wasm/CMakeLists.txt
@@ -407,6 +413,8 @@ lldb/source/Plugins/Process/gdb-remote/CMakeLists.txt
lldb/source/Plugins/Process/mach-core/
lldb/source/Plugins/Process/minidump/CMakeLists.txt
lldb/source/Plugins/Process/scripted/CMakeLists.txt
+lldb/source/Plugins/REPL/CMakeLists.txt
+lldb/source/Plugins/REPL/Clang/CMakeLists.txt
lldb/source/Plugins/ScriptInterpreter/CMakeLists.txt
lldb/source/Plugins/ScriptInterpreter/Lua/CMakeLists.txt
lldb/source/Plugins/ScriptInterpreter/None/CMakeLists.txt
@@ -428,6 +436,7 @@ lldb/source/Plugins/Trace/CMakeLists.txt
lldb/source/Plugins/Trace/common/CMakeLists.txt
lldb/source/Plugins/Trace/intel-pt/CMakeLists.txt
lldb/source/Plugins/TraceExporter/CMakeLists.txt
+lldb/source/Plugins/TraceExporter/common/CMakeLists.txt
lldb/source/Plugins/TraceExporter/ctf/CMakeLists.txt
lldb/source/Plugins/TypeSystem/CMakeLists.txt
lldb/source/Plugins/TypeSystem/Clang/CMakeLists.txt
@@ -555,6 +564,7 @@ llvm/lib/Target/AArch64/Utils/CMakeLists.txt
llvm/lib/Target/AMDGPU/AsmParser/CMakeLists.txt
llvm/lib/Target/AMDGPU/CMakeLists.txt
llvm/lib/Target/AMDGPU/Disassembler/CMakeLists.txt
+llvm/lib/Target/AMDGPU/MCA/CMakeLists.txt
llvm/lib/Target/AMDGPU/MCTargetDesc/CMakeLists.txt
llvm/lib/Target/AMDGPU/TargetInfo/CMakeLists.txt
llvm/lib/Target/AMDGPU/Utils/CMakeLists.txt
@@ -711,7 +721,9 @@ llvm/tools/llvm-cxxdump/CMakeLists.txt
llvm/tools/llvm-cxxfilt/CMakeLists.txt
llvm/tools/llvm-cxxmap/CMakeLists.txt
llvm/tools/llvm-diff/CMakeLists.txt
+llvm/tools/llvm-diff/lib/CMakeLists.txt
llvm/tools/llvm-dis/CMakeLists.txt
+llvm/tools/llvm-dlang-demangle-fuzzer/
llvm/tools/llvm-dwarfdump/CMakeLists.txt
llvm/tools/llvm-dwarfdump/fuzzer/
llvm/tools/llvm-dwp/CMakeLists.txt
@@ -733,8 +745,6 @@ llvm/tools/llvm-mc/CMakeLists.txt
llvm/tools/llvm-mc-assemble-fuzzer/
llvm/tools/llvm-mc-disassemble-fuzzer/
llvm/tools/llvm-mca/CMakeLists.txt
-llvm/tools/llvm-mca/lib/AMDGPU/CMakeLists.txt
-llvm/tools/llvm-mca/lib/CMakeLists.txt
llvm/tools/llvm-microsoft-demangle-fuzzer/
llvm/tools/llvm-ml/
llvm/tools/llvm-modextract/CMakeLists.txt
@@ -761,6 +771,7 @@ llvm/tools/llvm-stress/CMakeLists.txt
llvm/tools/llvm-strings/CMakeLists.txt
llvm/tools/llvm-symbolizer/CMakeLists.txt
llvm/tools/llvm-tapi-diff/CMakeLists.txt
+llvm/tools/llvm-tli-checker/CMakeLists.txt
llvm/tools/llvm-undname/
llvm/tools/llvm-xray/CMakeLists.txt
llvm/tools/llvm-yaml-numeric-parser-fuzzer/
@@ -844,11 +855,16 @@ llvm/utils/llvmdo
llvm/utils/llvmgrep
llvm/utils/merge-stats.py
llvm/utils/not/
+llvm/utils/pipeline.py
llvm/utils/prepare-code-coverage-artifact.py
+llvm/utils/reduce_pipeline.py
+llvm/utils/reduce_pipeline_test/
llvm/utils/release/
llvm/utils/remote-exec.py
llvm/utils/revert_checker.py
llvm/utils/revert_checker_test.py
+llvm/utils/rsp_bisect.py
+llvm/utils/rsp_bisect_test/
llvm/utils/sanitizers/
llvm/utils/schedcover.py
llvm/utils/shuffle_fuzz.py
@@ -877,6 +893,7 @@ openmp/CMakeLists.txt
openmp/README.rst
openmp/cmake/
openmp/docs/
+openmp/libompd/
openmp/libomptarget/
openmp/runtime/.clang-format
openmp/runtime/.clang-tidy
@@ -888,8 +905,6 @@ openmp/runtime/src/CMakeLists.txt
openmp/runtime/test/
openmp/runtime/tools/
openmp/tools/
-openmp/www/
-parallel-libs/
polly/
pstl/
runtimes/
diff --git a/contrib/llvm-project/clang/include/clang/AST/Redeclarable.h b/contrib/llvm-project/clang/include/clang/AST/Redeclarable.h
index 77b827c52bfb..58ec07973920 100644
--- a/contrib/llvm-project/clang/include/clang/AST/Redeclarable.h
+++ b/contrib/llvm-project/clang/include/clang/AST/Redeclarable.h
@@ -258,7 +258,8 @@ public:
redecl_iterator& operator++() {
assert(Current && "Advancing while iterator has reached end");
- // Sanity check to avoid infinite loop on invalid redecl chain.
+ // Make sure we don't infinitely loop on an invalid redecl chain. This
+ // should never happen.
if (Current->isFirstDecl()) {
if (PassedFirst) {
assert(0 && "Passed first decl twice, invalid redecl chain!");
diff --git a/contrib/llvm-project/clang/include/clang/AST/Type.h b/contrib/llvm-project/clang/include/clang/AST/Type.h
index fd25ec25d4f2..4c89c297bf34 100644
--- a/contrib/llvm-project/clang/include/clang/AST/Type.h
+++ b/contrib/llvm-project/clang/include/clang/AST/Type.h
@@ -5073,8 +5073,10 @@ public:
static void Profile(llvm::FoldingSetNodeID &ID, TemplateName Template,
QualType Deduced, bool IsDependent) {
Template.Profile(ID);
- ID.AddPointer(Deduced.getAsOpaquePtr());
- ID.AddBoolean(IsDependent);
+ QualType CanonicalType =
+ Deduced.isNull() ? Deduced : Deduced.getCanonicalType();
+ ID.AddPointer(CanonicalType.getAsOpaquePtr());
+ ID.AddBoolean(IsDependent || Template.isDependent());
}
static bool classof(const Type *T) {
diff --git a/contrib/llvm-project/clang/include/clang/Analysis/CFG.h b/contrib/llvm-project/clang/include/clang/Analysis/CFG.h
index f9223fe58a27..3b9b22e87f35 100644
--- a/contrib/llvm-project/clang/include/clang/Analysis/CFG.h
+++ b/contrib/llvm-project/clang/include/clang/Analysis/CFG.h
@@ -515,7 +515,7 @@ public:
/// of the most derived class while we're in the base class.
VirtualBaseBranch,
- /// Number of different kinds, for sanity checks. We subtract 1 so that
+ /// Number of different kinds, for validity checks. We subtract 1 so that
/// to keep receiving compiler warnings when we don't cover all enum values
/// in a switch.
NumKindsMinusOne = VirtualBaseBranch
diff --git a/contrib/llvm-project/clang/include/clang/Basic/Attr.td b/contrib/llvm-project/clang/include/clang/Basic/Attr.td
index d8f0fcd56550..39588d94cf09 100644
--- a/contrib/llvm-project/clang/include/clang/Basic/Attr.td
+++ b/contrib/llvm-project/clang/include/clang/Basic/Attr.td
@@ -2310,6 +2310,7 @@ def SwiftAttr : InheritableAttr {
let Spellings = [GNU<"swift_attr">];
let Args = [StringArgument<"Attribute">];
let Documentation = [SwiftAttrDocs];
+ let PragmaAttributeSupport = 1;
}
def SwiftBridge : InheritableAttr {
diff --git a/contrib/llvm-project/clang/include/clang/CodeGen/CGFunctionInfo.h b/contrib/llvm-project/clang/include/clang/CodeGen/CGFunctionInfo.h
index 4899c9deda6a..cd6c7e2e3128 100644
--- a/contrib/llvm-project/clang/include/clang/CodeGen/CGFunctionInfo.h
+++ b/contrib/llvm-project/clang/include/clang/CodeGen/CGFunctionInfo.h
@@ -250,7 +250,7 @@ public:
static ABIArgInfo getCoerceAndExpand(llvm::StructType *coerceToType,
llvm::Type *unpaddedCoerceToType) {
#ifndef NDEBUG
- // Sanity checks on unpaddedCoerceToType.
+ // Check that unpaddedCoerceToType has roughly the right shape.
// Assert that we only have a struct type if there are multiple elements.
auto unpaddedStruct = dyn_cast<llvm::StructType>(unpaddedCoerceToType);
diff --git a/contrib/llvm-project/clang/include/clang/Sema/Lookup.h b/contrib/llvm-project/clang/include/clang/Sema/Lookup.h
index c6edc2df5b9f..54fe7081b710 100644
--- a/contrib/llvm-project/clang/include/clang/Sema/Lookup.h
+++ b/contrib/llvm-project/clang/include/clang/Sema/Lookup.h
@@ -319,7 +319,7 @@ public:
}
LookupResultKind getResultKind() const {
- assert(sanity());
+ assert(checkDebugAssumptions());
return ResultKind;
}
@@ -706,10 +706,9 @@ private:
void addDeclsFromBasePaths(const CXXBasePaths &P);
void configure();
- // Sanity checks.
- bool sanity() const;
+ bool checkDebugAssumptions() const;
- bool sanityCheckUnresolved() const {
+ bool checkUnresolved() const {
for (iterator I = begin(), E = end(); I != E; ++I)
if (isa<UnresolvedUsingValueDecl>((*I)->getUnderlyingDecl()))
return true;
diff --git a/contrib/llvm-project/clang/lib/AST/ASTContext.cpp b/contrib/llvm-project/clang/lib/AST/ASTContext.cpp
index 415fa728b623..221986d8dbab 100644
--- a/contrib/llvm-project/clang/lib/AST/ASTContext.cpp
+++ b/contrib/llvm-project/clang/lib/AST/ASTContext.cpp
@@ -5676,6 +5676,9 @@ QualType ASTContext::getDeducedTemplateSpecializationType(
auto *DTST = new (*this, TypeAlignment)
DeducedTemplateSpecializationType(Template, DeducedType, IsDependent);
+ llvm::FoldingSetNodeID TempID;
+ DTST->Profile(TempID);
+ assert(ID == TempID && "ID does not match");
Types.push_back(DTST);
DeducedTemplateSpecializationTypes.InsertNode(DTST, InsertPos);
return QualType(DTST, 0);
diff --git a/contrib/llvm-project/clang/lib/Analysis/BodyFarm.cpp b/contrib/llvm-project/clang/lib/Analysis/BodyFarm.cpp
index 49ac74c233bd..92c236ed9080 100644
--- a/contrib/llvm-project/clang/lib/Analysis/BodyFarm.cpp
+++ b/contrib/llvm-project/clang/lib/Analysis/BodyFarm.cpp
@@ -790,9 +790,8 @@ static Stmt *createObjCPropertyGetter(ASTContext &Ctx,
}
}
- // Sanity check that the property is the same type as the ivar, or a
- // reference to it, and that it is either an object pointer or trivially
- // copyable.
+ // We expect that the property is the same type as the ivar, or a reference to
+ // it, and that it is either an object pointer or trivially copyable.
if (!Ctx.hasSameUnqualifiedType(IVar->getType(),
Prop->getType().getNonReferenceType()))
return nullptr;
diff --git a/contrib/llvm-project/clang/lib/Analysis/RetainSummaryManager.cpp b/contrib/llvm-project/clang/lib/Analysis/RetainSummaryManager.cpp
index 1d7b968e994f..836e369758d3 100644
--- a/contrib/llvm-project/clang/lib/Analysis/RetainSummaryManager.cpp
+++ b/contrib/llvm-project/clang/lib/Analysis/RetainSummaryManager.cpp
@@ -791,7 +791,7 @@ RetainSummaryManager::getUnarySummary(const FunctionType* FT,
// Unary functions have no arg effects by definition.
ArgEffects ScratchArgs(AF.getEmptyMap());
- // Sanity check that this is *really* a unary function. This can
+ // Verify that this is *really* a unary function. This can
// happen if people do weird things.
const FunctionProtoType* FTP = dyn_cast<FunctionProtoType>(FT);
if (!FTP || FTP->getNumParams() != 1)
diff --git a/contrib/llvm-project/clang/lib/Basic/DiagnosticIDs.cpp b/contrib/llvm-project/clang/lib/Basic/DiagnosticIDs.cpp
index 88801c683e8d..a9f2d09924cd 100644
--- a/contrib/llvm-project/clang/lib/Basic/DiagnosticIDs.cpp
+++ b/contrib/llvm-project/clang/lib/Basic/DiagnosticIDs.cpp
@@ -692,7 +692,7 @@ void DiagnosticIDs::getAllDiagnostics(diag::Flavor Flavor,
StringRef DiagnosticIDs::getNearestOption(diag::Flavor Flavor,
StringRef Group) {
StringRef Best;
- unsigned BestDistance = Group.size() + 1; // Sanity threshold.
+ unsigned BestDistance = Group.size() + 1; // Maximum threshold.
for (const WarningOption &O : OptionTable) {
// Don't suggest ignored warning flags.
if (!O.Members && !O.SubGroups)
diff --git a/contrib/llvm-project/clang/lib/Basic/SourceManager.cpp b/contrib/llvm-project/clang/lib/Basic/SourceManager.cpp
index c2e7b684cfd8..ec3e35595bb7 100644
--- a/contrib/llvm-project/clang/lib/Basic/SourceManager.cpp
+++ b/contrib/llvm-project/clang/lib/Basic/SourceManager.cpp
@@ -59,12 +59,10 @@ unsigned ContentCache::getSizeBytesMapped() const {
/// Returns the kind of memory used to back the memory buffer for
/// this content cache. This is used for performance analysis.
llvm::MemoryBuffer::BufferKind ContentCache::getMemoryBufferKind() const {
- assert(Buffer);
-
- // Should be unreachable, but keep for sanity.
- if (!Buffer)
+ if (Buffer == nullptr) {
+ assert(0 && "Buffer should never be null");
return llvm::MemoryBuffer::MemoryBuffer_Malloc;
-
+ }
return Buffer->getBufferKind();
}
@@ -864,7 +862,6 @@ FileID SourceManager::getFileIDLocal(SourceLocation::UIntTy SLocOffset) const {
/// This function knows that the SourceLocation is in a loaded buffer, not a
/// local one.
FileID SourceManager::getFileIDLoaded(SourceLocation::UIntTy SLocOffset) const {
- // Sanity checking, otherwise a bug may lead to hanging in release build.
if (SLocOffset < CurrentLoadedOffset) {
assert(0 && "Invalid SLocOffset or bad function choice");
return FileID();
@@ -909,7 +906,6 @@ FileID SourceManager::getFileIDLoaded(SourceLocation::UIntTy SLocOffset) const {
++NumProbes;
if (E.getOffset() > SLocOffset) {
- // Sanity checking, otherwise a bug may lead to hanging in release build.
if (GreaterIndex == MiddleIndex) {
assert(0 && "binary search missed the entry");
return FileID();
@@ -925,7 +921,6 @@ FileID SourceManager::getFileIDLoaded(SourceLocation::UIntTy SLocOffset) const {
return Res;
}
- // Sanity checking, otherwise a bug may lead to hanging in release build.
if (LessIndex == MiddleIndex) {
assert(0 && "binary search missed the entry");
return FileID();
diff --git a/contrib/llvm-project/clang/lib/Driver/ToolChains/Clang.cpp b/contrib/llvm-project/clang/lib/Driver/ToolChains/Clang.cpp
index e5476e07a5cc..55518cd7926f 100644
--- a/contrib/llvm-project/clang/lib/Driver/ToolChains/Clang.cpp
+++ b/contrib/llvm-project/clang/lib/Driver/ToolChains/Clang.cpp
@@ -4303,7 +4303,6 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA,
const Driver &D = TC.getDriver();
ArgStringList CmdArgs;
- // Check number of inputs for sanity. We need at least one input.
assert(Inputs.size() >= 1 && "Must have at least one input.");
// CUDA/HIP compilation may have multiple inputs (source file + results of
// device-side compilations). OpenMP device jobs also take the host IR as a
diff --git a/contrib/llvm-project/clang/lib/Format/Format.cpp b/contrib/llvm-project/clang/lib/Format/Format.cpp
index 085cca8853e6..8ae29c54a762 100644
--- a/contrib/llvm-project/clang/lib/Format/Format.cpp
+++ b/contrib/llvm-project/clang/lib/Format/Format.cpp
@@ -2579,7 +2579,7 @@ tooling::Replacements sortCppIncludes(const FormatStyle &Style, StringRef Code,
// doesn't have hidden dependencies
// (http://llvm.org/docs/CodingStandards.html#include-style).
//
- // FIXME: Do some sanity checking, e.g. edit distance of the base name, to fix
+ // FIXME: Do some validation, e.g. edit distance of the base name, to fix
// cases where the first #include is unlikely to be the main header.
tooling::IncludeCategoryManager Categories(Style.IncludeStyle, FileName);
bool FirstIncludeBlock = true;
diff --git a/contrib/llvm-project/clang/lib/Frontend/FrontendActions.cpp b/contrib/llvm-project/clang/lib/Frontend/FrontendActions.cpp
index b5544afa9f24..fb8132a5e40a 100644
--- a/contrib/llvm-project/clang/lib/Frontend/FrontendActions.cpp
+++ b/contrib/llvm-project/clang/lib/Frontend/FrontendActions.cpp
@@ -842,7 +842,7 @@ void PrintPreprocessedAction::ExecuteAction() {
const char *next = (cur != end) ? cur + 1 : end;
// Limit ourselves to only scanning 256 characters into the source
- // file. This is mostly a sanity check in case the file has no
+ // file. This is mostly a check in case the file has no
// newlines whatsoever.
if (end - cur > 256)
end = cur + 256;
diff --git a/contrib/llvm-project/clang/lib/Sema/SemaChecking.cpp b/contrib/llvm-project/clang/lib/Sema/SemaChecking.cpp
index 6ffd2096cbc5..a0f6702a5f82 100644
--- a/contrib/llvm-project/clang/lib/Sema/SemaChecking.cpp
+++ b/contrib/llvm-project/clang/lib/Sema/SemaChecking.cpp
@@ -5532,8 +5532,8 @@ ExprResult Sema::BuildAtomicExpr(SourceRange CallRange, SourceRange ExprRange,
// For an arithmetic operation, the implied arithmetic must be well-formed.
if (Form == Arithmetic) {
- // gcc does not enforce these rules for GNU atomics, but we do so for
- // sanity.
+ // GCC does not enforce these rules for GNU atomics, but we do, because if
+ // we didn't it would be very confusing. FIXME: For whom? How so?
auto IsAllowedValueType = [&](QualType ValType) {
if (ValType->isIntegerType())
return true;
@@ -5574,7 +5574,8 @@ ExprResult Sema::BuildAtomicExpr(SourceRange CallRange, SourceRange ExprRange,
if (!IsC11 && !AtomTy.isTriviallyCopyableType(Context) &&
!AtomTy->isScalarType()) {
// For GNU atomics, require a trivially-copyable type. This is not part of
- // the GNU atomics specification, but we enforce it for sanity.
+ // the GNU atomics specification, but we enforce it, because if we didn't it
+ // would be very confusing. FIXME: For whom? How so?
Diag(ExprRange.getBegin(), diag::err_atomic_op_needs_trivial_copy)
<< Ptr->getType() << Ptr->getSourceRange();
return ExprError();
diff --git a/contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp b/contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp
index 4fcc01012d44..af174ac1ca1a 100644
--- a/contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp
+++ b/contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp
@@ -12621,8 +12621,9 @@ void Sema::AddInitializerToDecl(Decl *RealDecl, Expr *Init, bool DirectInit) {
}
/// ActOnInitializerError - Given that there was an error parsing an
-/// initializer for the given declaration, try to return to some form
-/// of sanity.
+/// initializer for the given declaration, try to at least re-establish
+/// invariants such as whether a variable's type is either dependent or
+/// complete.
void Sema::ActOnInitializerError(Decl *D) {
// Our main concern here is re-establishing invariants like "a
// variable's type is either dependent or complete".
@@ -15997,8 +15998,7 @@ Decl *Sema::ActOnTag(Scope *S, unsigned TagSpec, TagUseKind TUK,
// It's okay to have a tag decl in the same scope as a typedef
// which hides a tag decl in the same scope. Finding this
- // insanity with a redeclaration lookup can only actually happen
- // in C++.
+ // with a redeclaration lookup can only actually happen in C++.
//
// This is also okay for elaborated-type-specifiers, which is
// technically forbidden by the current standard but which is
diff --git a/contrib/llvm-project/clang/lib/Sema/SemaDeclCXX.cpp b/contrib/llvm-project/clang/lib/Sema/SemaDeclCXX.cpp
index 20410a959cd0..2658e9698688 100644
--- a/contrib/llvm-project/clang/lib/Sema/SemaDeclCXX.cpp
+++ b/contrib/llvm-project/clang/lib/Sema/SemaDeclCXX.cpp
@@ -9172,7 +9172,8 @@ bool SpecialMemberDeletionInfo::shouldDeleteForField(FieldDecl *FD) {
}
// Don't check the implicit member of the anonymous union type.
- // This is technically non-conformant, but sanity demands it.
+ // This is technically non-conformant but supported, and we have a
+ // diagnostic for this elsewhere.
return false;
}
@@ -12256,7 +12257,7 @@ NamedDecl *Sema::BuildUsingDeclaration(
// Unlike most lookups, we don't always want to hide tag
// declarations: tag names are visible through the using declaration
// even if hidden by ordinary names, *except* in a dependent context
- // where it's important for the sanity of two-phase lookup.
+ // where they may be used by two-phase lookup.
if (!IsInstantiation)
R.setHideTags(false);
diff --git a/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp b/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp
index 97f2062d4485..8592335e20d3 100644
--- a/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp
+++ b/contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp
@@ -11185,7 +11185,6 @@ QualType Sema::CheckShiftOperands(ExprResult &LHS, ExprResult &RHS,
isScopedEnumerationType(RHSType)) {
return InvalidOperands(Loc, LHS, RHS);
}
- // Sanity-check shift operands
DiagnoseBadShiftValues(*this, LHS, RHS, Loc, Opc, LHSType);
// "The type of the result is that of the promoted left operand."
diff --git a/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp b/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp
index 891909c443cc..635252584562 100644
--- a/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp
+++ b/contrib/llvm-project/clang/lib/Sema/SemaExprCXX.cpp
@@ -1507,8 +1507,9 @@ Sema::BuildCXXTypeConstructExpr(TypeSourceInfo *TInfo,
ElemTy = Context.getBaseElementType(Ty);
}
- // There doesn't seem to be an explicit rule against this but sanity demands
- // we only construct objects with object types.
+ // Only construct objects with object types.
+ // There doesn't seem to be an explicit rule for this but functions are
+ // not objects, so they cannot take initializers.
if (Ty->isFunctionType())
return ExprError(Diag(TyBeginLoc, diag::err_init_for_function_type)
<< Ty << FullRange);
diff --git a/contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp b/contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp
index 05529d055621..0711e6d89383 100644
--- a/contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp
+++ b/contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp
@@ -324,14 +324,14 @@ void LookupResult::configure() {
}
}
-bool LookupResult::sanity() const {
+bool LookupResult::checkDebugAssumptions() const {
// This function is never called by NDEBUG builds.
assert(ResultKind != NotFound || Decls.size() == 0);
assert(ResultKind != Found || Decls.size() == 1);
assert(ResultKind != FoundOverloaded || Decls.size() > 1 ||
(Decls.size() == 1 &&
isa<FunctionTemplateDecl>((*begin())->getUnderlyingDecl())));
- assert(ResultKind != FoundUnresolvedValue || sanityCheckUnresolved());
+ assert(ResultKind != FoundUnresolvedValue || checkUnresolved());
assert(ResultKind != Ambiguous || Decls.size() > 1 ||
(Decls.size() == 1 && (Ambiguity == AmbiguousBaseSubobjects ||
Ambiguity == AmbiguousBaseSubobjectTypes)));
diff --git a/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp b/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
index 475cee9ce04b..6955efe8e6c2 100644
--- a/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
+++ b/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
@@ -1517,7 +1517,7 @@ void CStringChecker::evalStrcat(CheckerContext &C, const CallExpr *CE) const {
}
void CStringChecker::evalStrncat(CheckerContext &C, const CallExpr *CE) const {
- //char *strncat(char *restrict s1, const char *restrict s2, size_t n);
+ // char *strncat(char *restrict s1, const char *restrict s2, size_t n);
evalStrcpyCommon(C, CE,
/* ReturnEnd = */ false,
/* IsBounded = */ true,
@@ -2069,8 +2069,8 @@ void CStringChecker::evalStrcmpCommon(CheckerContext &C, const CallExpr *CE,
}
void CStringChecker::evalStrsep(CheckerContext &C, const CallExpr *CE) const {
- //char *strsep(char **stringp, const char *delim);
- // Sanity: does the search string parameter match the return type?
+ // char *strsep(char **stringp, const char *delim);
+ // Verify whether the search string parameter matches the return type.
SourceArgExpr SearchStrPtr = {CE->getArg(0), 0};
QualType CharPtrTy = SearchStrPtr.Expression->getType()->getPointeeType();
diff --git a/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp b/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp
index 5bf96acc0462..139bc0e99d78 100644
--- a/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp
+++ b/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp
@@ -160,7 +160,7 @@ static bool isInMIGCall(CheckerContext &C) {
if (Optional<AnyCall> AC = AnyCall::forDecl(D)) {
// Even though there's a Sema warning when the return type of an annotated
// function is not a kern_return_t, this warning isn't an error, so we need
- // an extra sanity check here.
+ // an extra check here.
// FIXME: AnyCall doesn't support blocks yet, so they remain unchecked
// for now.
if (!AC->getReturnType(C.getASTContext())
diff --git a/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp b/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
index e8b963a535d8..5a8edcabda71 100644
--- a/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
+++ b/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
@@ -155,7 +155,7 @@ class StdLibraryFunctionsChecker
protected:
ArgNo ArgN; // Argument to which we apply the constraint.
- /// Do polymorphic sanity check on the constraint.
+ /// Do polymorphic validation check on the constraint.
virtual bool checkSpecificValidity(const FunctionDecl *FD) const {
return true;
}
@@ -527,8 +527,8 @@ class StdLibraryFunctionsChecker
}
private:
- // Once we know the exact type of the function then do sanity check on all
- // the given constraints.
+ // Once we know the exact type of the function then do validation check on
+ // all the given constraints.
bool validateByConstraints(const FunctionDecl *FD) const {
for (const ConstraintSet &Case : CaseConstraints)
for (const ValueConstraintPtr &Constraint : Case)
diff --git a/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp b/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
index 2244cdb96d4f..41adc36b021a 100644
--- a/contrib/llvm-project/clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
*** 10863 LINES SKIPPED ***