git: 8a4dda33d675 - main - Merge llvm-project release/17.x llvmorg-17.0.0-rc4-10-g0176e8729ea4

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Fri, 08 Dec 2023 17:38:39 UTC
The branch main has been updated by dim:

URL: https://cgit.FreeBSD.org/src/commit/?id=8a4dda33d67586ca2624f2a38417baa03a533a7f

commit 8a4dda33d67586ca2624f2a38417baa03a533a7f
Merge: 06c3fb2749bd 8092e001bcd7
Author:     Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2023-09-11 18:37:24 +0000
Commit:     Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2023-12-08 17:35:11 +0000

    Merge llvm-project release/17.x llvmorg-17.0.0-rc4-10-g0176e8729ea4
    
    This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and
    openmp to llvmorg-17.0.0-rc4-10-g0176e8729ea4.
    
    PR:             273753
    MFC after:      1 month

 .../clang/include/clang/AST/DeclBase.h             |   6 +-
 .../clang/include/clang/AST/ExprConcepts.h         |  14 +-
 .../clang/include/clang/Basic/CodeGenOptions.def   |   1 -
 .../include/clang/Basic/DiagnosticASTKinds.td      |   2 +
 .../clang/include/clang/Basic/DiagnosticGroups.td  |   1 +
 .../include/clang/Basic/DiagnosticLexKinds.td      |   4 +
 .../clang/include/clang/Basic/Sanitizers.h         |   4 +
 .../clang/include/clang/Basic/TargetInfo.h         |   4 +-
 .../clang/include/clang/Basic/riscv_vector.td      |  52 +---
 .../clang/include/clang/CodeGen/CGFunctionInfo.h   |  29 +-
 .../clang/include/clang/Driver/Options.td          |  14 +-
 .../clang/include/clang/Driver/ToolChain.h         |   2 +-
 .../llvm-project/clang/include/clang/Sema/Sema.h   |   2 -
 contrib/llvm-project/clang/lib/AST/ASTContext.cpp  |   5 +-
 .../llvm-project/clang/lib/AST/ExprConstant.cpp    |  27 +-
 .../clang/lib/Basic/Targets/LoongArch.cpp          |  21 +-
 .../clang/lib/Basic/Targets/LoongArch.h            |  13 +
 .../llvm-project/clang/lib/Basic/Targets/RISCV.cpp |   4 +-
 .../llvm-project/clang/lib/CodeGen/ABIInfoImpl.cpp |  13 +-
 .../llvm-project/clang/lib/CodeGen/ABIInfoImpl.h   |  14 +-
 .../llvm-project/clang/lib/CodeGen/BackendUtil.cpp |  23 +-
 .../llvm-project/clang/lib/CodeGen/CGCXXABI.cpp    |   3 +-
 contrib/llvm-project/clang/lib/CodeGen/CGCall.cpp  | 244 +++++++++-------
 contrib/llvm-project/clang/lib/CodeGen/CGCall.h    |  29 ++
 contrib/llvm-project/clang/lib/CodeGen/CGClass.cpp | 106 ++++++-
 .../llvm-project/clang/lib/CodeGen/CGCoroutine.cpp |  33 +++
 .../llvm-project/clang/lib/CodeGen/CGDebugInfo.cpp |  13 +-
 .../llvm-project/clang/lib/CodeGen/CGDebugInfo.h   |   2 +-
 contrib/llvm-project/clang/lib/CodeGen/CGDecl.cpp  |   2 +-
 .../llvm-project/clang/lib/CodeGen/CGDeclCXX.cpp   |   4 +-
 contrib/llvm-project/clang/lib/CodeGen/CGExpr.cpp  |   9 +-
 .../clang/lib/CodeGen/CGExprConstant.cpp           |   2 +-
 .../clang/lib/CodeGen/CGOpenMPRuntime.cpp          |  11 +-
 .../clang/lib/CodeGen/CodeGenABITypes.cpp          |   5 +-
 .../clang/lib/CodeGen/CodeGenFunction.cpp          |  26 +-
 .../clang/lib/CodeGen/CodeGenFunction.h            |  19 +-
 .../clang/lib/CodeGen/CodeGenModule.cpp            |  34 ++-
 .../llvm-project/clang/lib/CodeGen/CodeGenModule.h |  20 +-
 .../llvm-project/clang/lib/CodeGen/CodeGenTypes.h  |  12 +-
 .../clang/lib/CodeGen/ItaniumCXXABI.cpp            |   2 +-
 .../clang/lib/CodeGen/MicrosoftCXXABI.cpp          |   3 +-
 .../clang/lib/CodeGen/Targets/LoongArch.cpp        |  11 +-
 .../clang/lib/CodeGen/Targets/RISCV.cpp            |  24 +-
 .../llvm-project/clang/lib/CodeGen/Targets/X86.cpp |  16 +-
 contrib/llvm-project/clang/lib/Driver/Driver.cpp   |  17 +-
 .../clang/lib/Driver/SanitizerArgs.cpp             |  32 +++
 .../llvm-project/clang/lib/Driver/ToolChain.cpp    |   6 +
 .../clang/lib/Driver/ToolChains/AIX.cpp            |   6 +
 .../clang/lib/Driver/ToolChains/Arch/LoongArch.cpp |  43 +--
 .../clang/lib/Driver/ToolChains/Arch/LoongArch.h   |   6 +
 .../clang/lib/Driver/ToolChains/Arch/X86.cpp       |   6 +
 .../clang/lib/Driver/ToolChains/Clang.cpp          |  39 +--
 .../clang/lib/Driver/ToolChains/CommonArgs.cpp     |   9 +-
 .../clang/lib/Driver/ToolChains/Gnu.cpp            |  22 +-
 .../clang/lib/Driver/ToolChains/Hexagon.cpp        |   5 +
 .../clang/lib/Driver/ToolChains/Solaris.cpp        |  41 ++-
 .../clang/lib/Format/UnwrappedLineParser.cpp       |   5 +-
 .../clang/lib/Frontend/FrontendAction.cpp          |   5 +
 .../clang/lib/Headers/__clang_cuda_math.h          |   2 +-
 .../lib/Headers/__clang_hip_libdevice_declares.h   |   2 +-
 contrib/llvm-project/clang/lib/Headers/cpuid.h     |  10 -
 .../clang/lib/Interpreter/IncrementalExecutor.cpp  |  19 +-
 .../llvm-project/clang/lib/Lex/LiteralSupport.cpp  |  41 ++-
 .../llvm-project/clang/lib/Parse/ParseDeclCXX.cpp  |  19 +-
 .../clang/lib/Parse/ParseTentative.cpp             |   1 +
 .../clang/lib/Sema/SemaAvailability.cpp            |  12 +
 contrib/llvm-project/clang/lib/Sema/SemaCast.cpp   |   8 +
 contrib/llvm-project/clang/lib/Sema/SemaDecl.cpp   |   3 +-
 contrib/llvm-project/clang/lib/Sema/SemaExpr.cpp   |  95 +++----
 .../llvm-project/clang/lib/Sema/SemaExprCXX.cpp    |  25 +-
 contrib/llvm-project/clang/lib/Sema/SemaLookup.cpp |  68 +++--
 .../clang/lib/Sema/SemaTemplateInstantiate.cpp     |  17 +-
 .../llvm-project/clang/lib/Sema/TreeTransform.h    |   4 +
 .../clang/lib/Serialization/ASTReaderDecl.cpp      |  66 +++--
 .../clang/lib/Serialization/ASTWriterDecl.cpp      |   4 +-
 .../lib/Tooling/Inclusions/Stdlib/StdSymbolMap.inc |  54 ++++
 .../compiler-rt/lib/asan/asan_interceptors.cpp     |  56 ++--
 .../compiler-rt/lib/asan/asan_interceptors.h       |   2 -
 .../compiler-rt/lib/asan/asan_win_dll_thunk.cpp    |   2 +
 .../compiler-rt/lib/builtins/aarch64/lse.S         |  40 ++-
 .../compiler-rt/lib/builtins/clear_cache.c         |   2 +-
 .../compiler-rt/lib/builtins/cpu_model.c           |   5 +-
 .../compiler-rt/lib/interception/interception.h    |   2 +-
 .../compiler-rt/lib/msan/msan_interceptors.cpp     |  37 +++
 .../compiler-rt/lib/profile/InstrProfilingFile.c   |  10 +-
 .../sanitizer_common_interceptors.inc              |  73 +++--
 .../sanitizer_common_interceptors_format.inc       |  16 +-
 .../sanitizer_stacktrace_sparc.cpp                 |   6 -
 .../sanitizer_unwind_linux_libcdep.cpp             |   6 -
 .../symbolizer/scripts/global_symbols.txt          |   7 +
 .../libcxx/include/__algorithm/pstl_sort.h         |   1 +
 contrib/llvm-project/libcxx/include/__config       |  36 ++-
 .../libcxx/include/__format/format_functions.h     |   3 +
 .../__locale_dir/locale_base_api/locale_guard.h    |   1 +
 .../llvm-project/libcxx/include/__mdspan/extents.h |  63 +++--
 .../libcxx/include/__mdspan/layout_left.h          |  32 ++-
 .../libcxx/include/__mdspan/layout_right.h         |  30 +-
 .../llvm-project/libcxx/include/__mdspan/mdspan.h  | 308 +++++++++++++++++++++
 .../llvm-project/libcxx/include/__std_clang_module | 226 +++++++++++++++
 .../__type_traits/is_nothrow_constructible.h       |   3 +-
 contrib/llvm-project/libcxx/include/mdspan         | 130 +++++++++
 .../libcxx/include/module.modulemap.in             |  65 ++---
 contrib/llvm-project/libcxx/include/sstream        |  50 ++--
 .../llvm-project/libcxx/modules/std/atomic.cppm    |   3 -
 .../llvm-project/libcxx/modules/std/execution.cppm |   2 +-
 .../libcxx/modules/std/filesystem.cppm             |   4 +-
 .../llvm-project/libcxx/modules/std/mdspan.cppm    |   2 +-
 contrib/llvm-project/libcxx/src/chrono.cpp         |   2 +-
 .../libcxx/src/filesystem/filesystem_clock.cpp     |   2 +-
 .../llvm-project/libunwind/src/Unwind-EHABI.cpp    |   7 +-
 contrib/llvm-project/lld/ELF/Arch/LoongArch.cpp    |   7 +
 contrib/llvm-project/lld/ELF/Arch/PPC.cpp          |  12 +-
 contrib/llvm-project/lld/ELF/Arch/PPC64.cpp        |  86 ++++--
 contrib/llvm-project/lld/ELF/Target.h              |   1 +
 contrib/llvm-project/lld/docs/ReleaseNotes.rst     |   5 +
 .../ObjC/GNUstepObjCRuntime/GNUstepObjCRuntime.cpp |  42 ++-
 .../Process/Utility/RegisterContextPOSIX_arm64.cpp |   4 +
 .../Process/Utility/RegisterContextPOSIX_arm64.h   |   1 +
 .../Process/Utility/RegisterInfoPOSIX_arm64.h      |   1 +
 .../elf-core/RegisterContextPOSIXCore_arm64.cpp    |  14 +
 .../elf-core/RegisterContextPOSIXCore_arm64.h      |   1 +
 .../Plugins/Process/elf-core/RegisterUtilities.h   |   4 +
 .../llvm/include/llvm/ADT/FunctionExtras.h         |  12 +-
 .../llvm/include/llvm/ADT/SmallVector.h            |   4 +-
 .../llvm/include/llvm/Analysis/LazyValueInfo.h     |   3 +
 .../llvm/include/llvm/Analysis/RegionInfoImpl.h    |   4 +-
 .../llvm/include/llvm/Analysis/ValueTracking.h     |   4 -
 .../llvm/include/llvm/CodeGen/CodeGenPassBuilder.h |   2 +-
 .../llvm/include/llvm/CodeGen/LowLevelType.h       |   7 +-
 .../llvm/CodeGen/PreISelIntrinsicLowering.h        |   4 +
 .../llvm/include/llvm/CodeGen/TargetInstrInfo.h    |  17 --
 .../llvm-project/llvm/include/llvm/Object/Wasm.h   |  10 +-
 .../llvm/include/llvm/ObjectYAML/WasmYAML.h        |   1 +
 .../llvm/include/llvm/Option/ArgList.h             |   1 +
 .../llvm/include/llvm/Support/type_traits.h        |  38 ---
 .../llvm/TargetParser/LoongArchTargetParser.h      |   5 +-
 .../AggressiveInstCombine/AggressiveInstCombine.h  |   2 +-
 .../llvm/Transforms/IPO/FunctionSpecialization.h   |  15 +-
 .../llvm/Transforms/Scalar/MemCpyOptimizer.h       |   4 -
 .../llvm/lib/Analysis/LazyValueInfo.cpp            |   9 +
 .../llvm/lib/Analysis/ScalarEvolution.cpp          |   2 +-
 .../llvm/lib/Analysis/ValueTracking.cpp            |   7 -
 .../llvm/lib/CodeGen/CalcSpillWeights.cpp          |  15 +-
 .../llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp |  30 +-
 .../llvm/lib/CodeGen/InlineSpiller.cpp             |  34 ++-
 .../llvm/lib/CodeGen/LiveRangeEdit.cpp             |   3 +-
 .../llvm/lib/CodeGen/LiveRangeShrink.cpp           |   4 +-
 .../llvm-project/llvm/lib/CodeGen/MachineLICM.cpp  |   4 +
 .../llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp  |  54 ++--
 .../llvm/lib/CodeGen/RegAllocGreedy.cpp            |  21 +-
 .../llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp  |   6 +-
 .../llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp |   3 +
 .../CodeGen/SelectionDAG/SelectionDAGBuilder.cpp   |  99 ++++---
 contrib/llvm-project/llvm/lib/CodeGen/SplitKit.cpp |  17 +-
 contrib/llvm-project/llvm/lib/CodeGen/SplitKit.h   |   7 +-
 .../llvm/lib/CodeGen/TargetInstrInfo.cpp           |   7 +-
 .../llvm/lib/CodeGen/TargetLoweringBase.cpp        |   2 +-
 .../lib/CodeGen/TargetLoweringObjectFileImpl.cpp   |  21 +-
 contrib/llvm-project/llvm/lib/LTO/LTO.cpp          |   7 +-
 .../llvm/lib/ObjCopy/wasm/WasmObject.h             |   1 +
 .../llvm/lib/ObjCopy/wasm/WasmReader.cpp           |   4 +-
 .../llvm/lib/ObjCopy/wasm/WasmWriter.cpp           |  13 +-
 .../llvm-project/llvm/lib/Object/SymbolSize.cpp    |  17 +-
 .../llvm/lib/Object/WasmObjectFile.cpp             |   4 +
 .../llvm/lib/ObjectYAML/WasmEmitter.cpp            |  12 +-
 .../llvm-project/llvm/lib/ObjectYAML/WasmYAML.cpp  |   1 +
 contrib/llvm-project/llvm/lib/Option/ArgList.cpp   |   7 +
 .../llvm-project/llvm/lib/TableGen/TGParser.cpp    |   9 +-
 .../llvm/lib/Target/AArch64/AArch64.td             |   6 +-
 .../lib/Target/AArch64/AArch64FrameLowering.cpp    |  13 +-
 .../lib/Target/AArch64/AArch64ISelLowering.cpp     |  69 +++--
 .../llvm/lib/Target/AArch64/AArch64InstrFormats.td |   9 +-
 .../llvm/lib/Target/AArch64/AArch64InstrInfo.cpp   |  11 +-
 .../llvm/lib/Target/AArch64/AArch64InstrInfo.td    |  20 +-
 .../Target/AArch64/AArch64LoadStoreOptimizer.cpp   |   8 +-
 .../llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |  49 ++--
 .../llvm/lib/Target/AArch64/AArch64Subtarget.h     |   2 +-
 .../Target/AArch64/GISel/AArch64CallLowering.cpp   |   5 +
 .../llvm/lib/Target/AArch64/SVEInstrFormats.td     |   7 +
 .../llvm-project/llvm/lib/Target/AMDGPU/AMDGPU.h   |   4 -
 .../llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp  |  37 ++-
 .../llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h    |   2 +-
 .../llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp |  47 +++-
 .../llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h   |   2 +-
 .../llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp |  16 +-
 .../llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp |   4 -
 .../llvm/lib/Target/AMDGPU/SIFrameLowering.cpp     |  16 +-
 .../llvm/lib/Target/AMDGPU/SIISelLowering.cpp      |   2 +-
 .../llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp    |   7 +-
 .../llvm/lib/Target/AMDGPU/SIInstrInfo.cpp         |  45 +--
 .../llvm/lib/Target/AMDGPU/SIInstrInfo.h           |  19 +-
 .../llvm/lib/Target/AMDGPU/SIInstructions.td       |   7 -
 .../llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp   | 136 ++-------
 .../llvm/lib/Target/AMDGPU/SILowerWWMCopies.cpp    | 141 ----------
 .../lib/Target/AMDGPU/SIMachineFunctionInfo.cpp    |  69 ++---
 .../llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h |  39 ++-
 .../llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp      |  23 +-
 .../llvm/lib/Target/AMDGPU/SIRegisterInfo.h        |  17 +-
 .../llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp |   2 +
 .../Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp   |   6 +-
 .../llvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp |  26 +-
 .../llvm-project/llvm/lib/Target/BPF/BTFDebug.cpp  |   2 +
 .../llvm/lib/Target/LoongArch/LoongArch.td         |   5 +
 .../lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp  |  50 +++-
 .../Target/PowerPC/MCTargetDesc/PPCInstPrinter.cpp |  14 +-
 .../llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp    |  37 +--
 .../llvm/lib/Target/PowerPC/PPCInstrFormats.td     |   6 +
 .../llvm/lib/Target/PowerPC/PPCInstrInfo.td        |   9 +
 .../llvm/lib/Target/PowerPC/PPCMCInstLower.cpp     |   4 -
 .../llvm/lib/Target/PowerPC/PPCScheduleP9.td       |   2 +-
 .../llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp      |  15 +-
 .../Target/RISCV/RISCVExpandAtomicPseudoInsts.cpp  |   9 +
 .../llvm/lib/Target/RISCV/RISCVFrameLowering.cpp   |  39 +--
 .../llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp    |  13 +-
 .../llvm/lib/Target/RISCV/RISCVISelLowering.cpp    |  26 +-
 .../lib/Target/RISCV/RISCVPushPopOptimizer.cpp     |   3 +-
 .../llvm/lib/Target/Sparc/SparcInstrInfo.td        |  16 ++
 .../Target/SystemZ/SystemZTargetTransformInfo.cpp  |   5 +
 contrib/llvm-project/llvm/lib/Target/X86/X86.td    |   7 +
 .../llvm/lib/Target/X86/X86ISelLowering.cpp        |  96 ++++---
 .../llvm/lib/Target/X86/X86ISelLowering.h          |   2 -
 .../llvm/lib/Target/X86/X86InstrAVX512.td          |  10 +
 .../llvm/lib/Target/X86/X86InstrSSE.td             |   5 +
 .../llvm/lib/Target/X86/X86TargetTransformInfo.cpp |  14 +-
 .../llvm/lib/Target/X86/X86TargetTransformInfo.h   |   1 +
 .../llvm-project/llvm/lib/TargetParser/Host.cpp    |  10 +-
 .../lib/TargetParser/LoongArchTargetParser.cpp     |  12 +
 .../AggressiveInstCombine.cpp                      | 217 ++++-----------
 .../llvm/lib/Transforms/Coroutines/CoroElide.cpp   |  83 ++++--
 .../lib/Transforms/IPO/FunctionSpecialization.cpp  |  82 +-----
 .../InstCombine/InstructionCombining.cpp           |   2 +-
 .../Instrumentation/ControlHeightReduction.cpp     |  14 +
 .../Transforms/Instrumentation/GCOVProfiling.cpp   |   4 +-
 .../Transforms/Scalar/ConstraintElimination.cpp    |   2 +-
 .../llvm/lib/Transforms/Scalar/JumpThreading.cpp   |   2 +
 .../llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp | 256 +----------------
 .../Transforms/Scalar/TailRecursionElimination.cpp |   6 +
 .../llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp |  14 +-
 .../lib/Transforms/Vectorize/LoopVectorize.cpp     |  38 ++-
 .../llvm/tools/llvm-readobj/ELFDumper.cpp          |   2 +-
 .../openmp/runtime/src/ompt-event-specific.h       |  13 +-
 lib/clang/include/VCSVersion.inc                   |   6 +-
 lib/clang/include/lld/Common/Version.inc           |   2 +-
 lib/clang/include/lldb/Version/Version.inc         |   4 +-
 lib/clang/include/llvm/Config/config.h             |   4 +-
 lib/clang/include/llvm/Config/llvm-config.h        |   2 +-
 lib/clang/include/llvm/Support/VCSRevision.h       |   2 +-
 lib/libc++/__config_site                           |   1 +
 lib/libc++/module.modulemap                        |  65 ++---
 249 files changed, 3393 insertions(+), 2248 deletions(-)

diff --cc contrib/llvm-project/libcxx/include/__mdspan/mdspan.h
index 000000000000,58f3b9cf1b18..58f3b9cf1b18
mode 000000,100644..100644
--- a/contrib/llvm-project/libcxx/include/__mdspan/mdspan.h
+++ b/contrib/llvm-project/libcxx/include/__mdspan/mdspan.h
diff --cc contrib/llvm-project/libcxx/include/__std_clang_module
index 000000000000,4d02336d30b0..4d02336d30b0
mode 000000,100644..100644
--- a/contrib/llvm-project/libcxx/include/__std_clang_module
+++ b/contrib/llvm-project/libcxx/include/__std_clang_module
diff --cc lib/clang/include/VCSVersion.inc
index 4e304f6496c3,000000000000..c43f3a94a8ee
mode 100644,000000..100644
--- a/lib/clang/include/VCSVersion.inc
+++ b/lib/clang/include/VCSVersion.inc
@@@ -1,8 -1,0 +1,8 @@@
- #define LLVM_REVISION "llvmorg-17-init-19304-gd0b54bb50e51"
++#define LLVM_REVISION "llvmorg-17.0.0-rc4-10-g0176e8729ea4"
 +#define LLVM_REPOSITORY "https://github.com/llvm/llvm-project.git"
 +
- #define CLANG_REVISION "llvmorg-17-init-19304-gd0b54bb50e51"
++#define CLANG_REVISION "llvmorg-17.0.0-rc4-10-g0176e8729ea4"
 +#define CLANG_REPOSITORY "https://github.com/llvm/llvm-project.git"
 +
- #define LLDB_REVISION "llvmorg-17-init-19304-gd0b54bb50e51"
++#define LLDB_REVISION "llvmorg-17.0.0-rc4-10-g0176e8729ea4"
 +#define LLDB_REPOSITORY "https://github.com/llvm/llvm-project.git"
diff --cc lib/clang/include/lld/Common/Version.inc
index afc9d427f0e2,000000000000..eb48f368dbfc
mode 100644,000000..100644
--- a/lib/clang/include/lld/Common/Version.inc
+++ b/lib/clang/include/lld/Common/Version.inc
@@@ -1,4 -1,0 +1,4 @@@
 +// Local identifier in __FreeBSD_version style
 +#define LLD_FREEBSD_VERSION 1500000
 +
- #define LLD_VERSION_STRING "17.0.0 (FreeBSD llvmorg-17-init-19304-gd0b54bb50e51-" __XSTRING(LLD_FREEBSD_VERSION) ")"
++#define LLD_VERSION_STRING "17.0.0 (FreeBSD llvmorg-17.0.0-rc4-10-g0176e8729ea4-" __XSTRING(LLD_FREEBSD_VERSION) ")"
diff --cc lib/clang/include/lldb/Version/Version.inc
index 5b28e769a00d,000000000000..aa3f6fad22ee
mode 100644,000000..100644
--- a/lib/clang/include/lldb/Version/Version.inc
+++ b/lib/clang/include/lldb/Version/Version.inc
@@@ -1,6 -1,0 +1,6 @@@
- #define LLDB_VERSION 17.0.0git
- #define LLDB_VERSION_STRING "17.0.0git"
++#define LLDB_VERSION 17.0.0rc
++#define LLDB_VERSION_STRING "17.0.0rc"
 +#define LLDB_VERSION_MAJOR 17
 +#define LLDB_VERSION_MINOR 0
 +#define LLDB_VERSION_PATCH 0
 +/* #undef LLDB_FULL_VERSION_STRING */
diff --cc lib/clang/include/llvm/Config/config.h
index afe1420ce3bb,000000000000..4c434a179f28
mode 100644,000000..100644
--- a/lib/clang/include/llvm/Config/config.h
+++ b/lib/clang/include/llvm/Config/config.h
@@@ -1,378 -1,0 +1,378 @@@
 +#ifndef CONFIG_H
 +#define CONFIG_H
 +
 +// Include this header only under the llvm source tree.
 +// This is a private header.
 +
 +/* Exported configuration */
 +#include "llvm/Config/llvm-config.h"
 +
 +/* Bug report URL. */
 +#define BUG_REPORT_URL "https://bugs.freebsd.org/submit/"
 +
 +/* Define to 1 to enable backtraces, and to 0 otherwise. */
 +#define ENABLE_BACKTRACES 1
 +
 +/* Define to 1 to enable crash overrides, and to 0 otherwise. */
 +#define ENABLE_CRASH_OVERRIDES 1
 +
 +/* Define to 1 to enable crash memory dumps, and to 0 otherwise. */
 +#define LLVM_ENABLE_CRASH_DUMPS 0
 +
 +/* Define to 1 to prefer forward slashes on Windows, and to 0 prefer
 +   backslashes. */
 +#define LLVM_WINDOWS_PREFER_FORWARD_SLASH 0
 +
 +/* Define to 1 if you have the `backtrace' function. */
 +#define HAVE_BACKTRACE TRUE
 +
 +#define BACKTRACE_HEADER <execinfo.h>
 +
 +/* Define to 1 if you have the <CrashReporterClient.h> header file. */
 +/* #undef HAVE_CRASHREPORTERCLIENT_H */
 +
 +/* can use __crashreporter_info__ */
 +#if defined(__APPLE__)
 +#define HAVE_CRASHREPORTER_INFO 1
 +#else
 +#define HAVE_CRASHREPORTER_INFO 0
 +#endif
 +
 +/* Define to 1 if you have the declaration of `arc4random', and to 0 if you
 +   don't. */
 +#define HAVE_DECL_ARC4RANDOM 1
 +
 +/* Define to 1 if you have the declaration of `FE_ALL_EXCEPT', and to 0 if you
 +   don't. */
 +#define HAVE_DECL_FE_ALL_EXCEPT 1
 +
 +/* Define to 1 if you have the declaration of `FE_INEXACT', and to 0 if you
 +   don't. */
 +#define HAVE_DECL_FE_INEXACT 1
 +
 +/* Define to 1 if you have the declaration of `strerror_s', and to 0 if you
 +   don't. */
 +#define HAVE_DECL_STRERROR_S 0
 +
 +/* Define to 1 if you have the <dlfcn.h> header file. */
 +#define HAVE_DLFCN_H 1
 +
 +/* Define if dlopen() is available on this platform. */
 +#define HAVE_DLOPEN 1
 +
 +/* Define if dladdr() is available on this platform. */
 +#define HAVE_DLADDR 1
 +
 +#if !defined(__arm__) || defined(__USING_SJLJ_EXCEPTIONS__) || defined(__ARM_DWARF_EH__)
 +/* Define to 1 if we can register EH frames on this platform. */
 +#define HAVE_REGISTER_FRAME 1
 +
 +/* Define to 1 if we can deregister EH frames on this platform. */
 +#define HAVE_DEREGISTER_FRAME 1
 +#endif // !arm || USING_SJLJ_EXCEPTIONS || ARM_DWARF_EH_
 +
 +/* Define if __unw_add_dynamic_fde() is available on this platform. */
 +/* #undef HAVE_UNW_ADD_DYNAMIC_FDE */
 +
 +/* Define to 1 if you have the <errno.h> header file. */
 +#define HAVE_ERRNO_H 1
 +
 +/* Define to 1 if you have the <fcntl.h> header file. */
 +#define HAVE_FCNTL_H 1
 +
 +/* Define to 1 if you have the <fenv.h> header file. */
 +#define HAVE_FENV_H 1
 +
 +/* Define if libffi is available on this platform. */
 +/* #undef HAVE_FFI_CALL */
 +
 +/* Define to 1 if you have the <ffi/ffi.h> header file. */
 +/* #undef HAVE_FFI_FFI_H */
 +
 +/* Define to 1 if you have the <ffi.h> header file. */
 +/* #undef HAVE_FFI_H */
 +
 +/* Define to 1 if you have the `futimens' function. */
 +#define HAVE_FUTIMENS 1
 +
 +/* Define to 1 if you have the `futimes' function. */
 +#define HAVE_FUTIMES 1
 +
 +/* Define to 1 if you have the `getpagesize' function. */
 +#define HAVE_GETPAGESIZE 1
 +
 +/* Define to 1 if you have the `getrlimit' function. */
 +#define HAVE_GETRLIMIT 1
 +
 +/* Define to 1 if you have the `getrusage' function. */
 +#define HAVE_GETRUSAGE 1
 +
 +/* Define to 1 if you have the `isatty' function. */
 +#define HAVE_ISATTY 1
 +
 +/* Define to 1 if you have the `edit' library (-ledit). */
 +#define HAVE_LIBEDIT TRUE
 +
 +/* Define to 1 if you have the `pfm' library (-lpfm). */
 +/* #undef HAVE_LIBPFM */
 +
 +/* Define to 1 if the `perf_branch_entry' struct has field cycles. */
 +/* #undef LIBPFM_HAS_FIELD_CYCLES */
 +
 +/* Define to 1 if you have the `psapi' library (-lpsapi). */
 +/* #undef HAVE_LIBPSAPI */
 +
 +/* Define to 1 if you have the `pthread' library (-lpthread). */
 +#define HAVE_LIBPTHREAD 1
 +
 +/* Define to 1 if you have the `pthread_getname_np' function. */
 +#define HAVE_PTHREAD_GETNAME_NP 1
 +
 +/* Define to 1 if you have the `pthread_setname_np' function. */
 +#define HAVE_PTHREAD_SETNAME_NP 1
 +
 +/* Define to 1 if you have the <link.h> header file. */
 +#if __has_include(<link.h>)
 +#define HAVE_LINK_H 1
 +#else
 +#define HAVE_LINK_H 0
 +#endif
 +
 +/* Define to 1 if you have the <mach/mach.h> header file. */
 +#if __has_include(<mach/mach.h>)
 +#define HAVE_MACH_MACH_H 1
 +#endif
 +
 +/* Define to 1 if you have the `mallctl' function. */
 +#if defined(__FreeBSD__)
 +#define HAVE_MALLCTL 1
 +#endif
 +
 +/* Define to 1 if you have the `mallinfo' function. */
 +#if defined(__linux__)
 +#define HAVE_MALLINFO 1
 +#endif
 +
 +/* Define to 1 if you have the `mallinfo2' function. */
 +/* #undef HAVE_MALLINFO2 */
 +
 +/* Define to 1 if you have the <malloc/malloc.h> header file. */
 +#if __has_include(<malloc/malloc.h>)
 +#define HAVE_MALLOC_MALLOC_H 1
 +#endif
 +
 +/* Define to 1 if you have the `malloc_zone_statistics' function. */
 +#if defined(__APPLE__)
 +#define HAVE_MALLOC_ZONE_STATISTICS 1
 +#endif
 +
 +/* Define to 1 if you have the `posix_spawn' function. */
 +#define HAVE_POSIX_SPAWN 1
 +
 +/* Define to 1 if you have the `pread' function. */
 +#define HAVE_PREAD 1
 +
 +/* Define to 1 if you have the <pthread.h> header file. */
 +#define HAVE_PTHREAD_H 1
 +
 +/* Have pthread_mutex_lock */
 +#define HAVE_PTHREAD_MUTEX_LOCK 1
 +
 +/* Have pthread_rwlock_init */
 +#define HAVE_PTHREAD_RWLOCK_INIT 1
 +
 +/* Define to 1 if you have the `sbrk' function. */
 +#define HAVE_SBRK 1
 +
 +/* Define to 1 if you have the `setenv' function. */
 +#define HAVE_SETENV 1
 +
 +/* Define to 1 if you have the `setrlimit' function. */
 +#define HAVE_SETRLIMIT 1
 +
 +/* Define to 1 if you have the `sigaltstack' function. */
 +#define HAVE_SIGALTSTACK 1
 +
 +/* Define to 1 if you have the <signal.h> header file. */
 +#define HAVE_SIGNAL_H 1
 +
 +/* Define to 1 if you have the `strerror_r' function. */
 +#define HAVE_STRERROR_R 1
 +
 +/* Define to 1 if you have the `sysconf' function. */
 +#define HAVE_SYSCONF 1
 +
 +/* Define to 1 if you have the <sys/ioctl.h> header file. */
 +#define HAVE_SYS_IOCTL_H 1
 +
 +/* Define to 1 if you have the <sys/mman.h> header file. */
 +#define HAVE_SYS_MMAN_H 1
 +
 +/* Define to 1 if you have the <sys/param.h> header file. */
 +#define HAVE_SYS_PARAM_H 1
 +
 +/* Define to 1 if you have the <sys/resource.h> header file. */
 +#define HAVE_SYS_RESOURCE_H 1
 +
 +/* Define to 1 if you have the <sys/stat.h> header file. */
 +#define HAVE_SYS_STAT_H 1
 +
 +/* Define to 1 if you have the <sys/time.h> header file. */
 +#define HAVE_SYS_TIME_H 1
 +
 +/* Define to 1 if stat struct has st_mtimespec member .*/
 +#if !defined(__linux__)
 +#define HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC 1
 +#endif
 +
 +/* Define to 1 if stat struct has st_mtim member. */
 +#if !defined(__APPLE__)
 +#define HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 1
 +#endif
 +
 +/* Define to 1 if you have the <sys/types.h> header file. */
 +#define HAVE_SYS_TYPES_H 1
 +
 +/* Define if the setupterm() function is supported this platform. */
 +#if defined(__FreeBSD__)
 +/*
 + * This is only needed for terminalHasColors(). When disabled LLVM falls back
 + * to checking a list of TERM prefixes which is sufficient for a bootstrap tool.
 + */
 +#define LLVM_ENABLE_TERMINFO TRUE
 +#endif
 +
 +/* Define to 1 if you have the <termios.h> header file. */
 +#define HAVE_TERMIOS_H 1
 +
 +/* Define to 1 if you have the <unistd.h> header file. */
 +#define HAVE_UNISTD_H 1
 +
 +/* Define to 1 if you have the <valgrind/valgrind.h> header file. */
 +/* #undef HAVE_VALGRIND_VALGRIND_H */
 +
 +/* Have host's _alloca */
 +/* #undef HAVE__ALLOCA */
 +
 +/* Define to 1 if you have the `_chsize_s' function. */
 +/* #undef HAVE__CHSIZE_S */
 +
 +/* Define to 1 if you have the `_Unwind_Backtrace' function. */
 +#define HAVE__UNWIND_BACKTRACE 1
 +
 +/* Have host's __alloca */
 +/* #undef HAVE___ALLOCA */
 +
 +/* Have host's __ashldi3 */
 +/* #undef HAVE___ASHLDI3 */
 +
 +/* Have host's __ashrdi3 */
 +/* #undef HAVE___ASHRDI3 */
 +
 +/* Have host's __chkstk */
 +/* #undef HAVE___CHKSTK */
 +
 +/* Have host's __chkstk_ms */
 +/* #undef HAVE___CHKSTK_MS */
 +
 +/* Have host's __cmpdi2 */
 +/* #undef HAVE___CMPDI2 */
 +
 +/* Have host's __divdi3 */
 +/* #undef HAVE___DIVDI3 */
 +
 +/* Have host's __fixdfdi */
 +/* #undef HAVE___FIXDFDI */
 +
 +/* Have host's __fixsfdi */
 +/* #undef HAVE___FIXSFDI */
 +
 +/* Have host's __floatdidf */
 +/* #undef HAVE___FLOATDIDF */
 +
 +/* Have host's __lshrdi3 */
 +/* #undef HAVE___LSHRDI3 */
 +
 +/* Have host's __main */
 +/* #undef HAVE___MAIN */
 +
 +/* Have host's __moddi3 */
 +/* #undef HAVE___MODDI3 */
 +
 +/* Have host's __udivdi3 */
 +/* #undef HAVE___UDIVDI3 */
 +
 +/* Have host's __umoddi3 */
 +/* #undef HAVE___UMODDI3 */
 +
 +/* Have host's ___chkstk */
 +/* #undef HAVE____CHKSTK */
 +
 +/* Have host's ___chkstk_ms */
 +/* #undef HAVE____CHKSTK_MS */
 +
 +/* Linker version detected at compile time. */
 +/* #undef HOST_LINK_VERSION */
 +
 +/* Define if overriding target triple is enabled */
 +/* #undef LLVM_TARGET_TRIPLE_ENV */
 +
 +/* Whether tools show host and target info when invoked with --version */
 +#define LLVM_VERSION_PRINTER_SHOW_HOST_TARGET_INFO 1
 +
 +/* Define if libxml2 is supported on this platform. */
 +/* #undef LLVM_ENABLE_LIBXML2 */
 +
 +/* Define to the extension used for shared libraries, say, ".so". */
 +#if defined(__APPLE__)
 +#define LTDL_SHLIB_EXT ".dylib"
 +#else
 +#define LTDL_SHLIB_EXT ".so"
 +#endif
 +
 +/* Define to the extension used for plugin libraries, say, ".so". */
 +#if defined(__APPLE__)
 +#define LLVM_PLUGIN_EXT ".dylib"
 +#else
 +#define LLVM_PLUGIN_EXT ".so"
 +#endif
 +
 +/* Define to the address where bug reports for this package should be sent. */
 +#define PACKAGE_BUGREPORT "https://bugs.freebsd.org/submit/"
 +
 +/* Define to the full name of this package. */
 +#define PACKAGE_NAME "LLVM"
 +
 +/* Define to the full name and version of this package. */
- #define PACKAGE_STRING "LLVM 17.0.0git"
++#define PACKAGE_STRING "LLVM 17.0.0rc"
 +
 +/* Define to the version of this package. */
- #define PACKAGE_VERSION "17.0.0git"
++#define PACKAGE_VERSION "17.0.0rc"
 +
 +/* Define to the vendor of this package. */
 +/* #undef PACKAGE_VENDOR */
 +
 +/* Define to a function implementing stricmp */
 +/* #undef stricmp */
 +
 +/* Define to a function implementing strdup */
 +/* #undef strdup */
 +
 +/* Whether GlobalISel rule coverage is being collected */
 +#define LLVM_GISEL_COV_ENABLED 0
 +
 +/* Define to the default GlobalISel coverage file prefix */
 +/* #undef LLVM_GISEL_COV_PREFIX */
 +
 +/* Whether Timers signpost passes in Xcode Instruments */
 +#if defined(__APPLE__)
 +#define LLVM_SUPPORT_XCODE_SIGNPOSTS 1
 +#else
 +#define LLVM_SUPPORT_XCODE_SIGNPOSTS 0
 +#endif
 +
 +/* #undef HAVE_PROC_PID_RUSAGE */
 +
 +#define HAVE_BUILTIN_THREAD_POINTER 1
 +
 +#endif
diff --cc lib/clang/include/llvm/Config/llvm-config.h
index b809650a0a1c,000000000000..07229dfed518
mode 100644,000000..100644
--- a/lib/clang/include/llvm/Config/llvm-config.h
+++ b/lib/clang/include/llvm/Config/llvm-config.h
@@@ -1,131 -1,0 +1,131 @@@
 +/*===------- llvm/Config/llvm-config.h - llvm configuration -------*- C -*-===*/
 +/*                                                                            */
 +/* Part of the LLVM Project, under the Apache License v2.0 with LLVM          */
 +/* Exceptions.                                                                */
 +/* See https://llvm.org/LICENSE.txt for license information.                  */
 +/* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception                    */
 +/*                                                                            */
 +/*===----------------------------------------------------------------------===*/
 +
 +/* This file enumerates variables from the LLVM configuration so that they
 +   can be in exported headers and won't override package specific directives.
 +   This is a C header that can be included in the llvm-c headers. */
 +
 +#ifndef LLVM_CONFIG_H
 +#define LLVM_CONFIG_H
 +
 +/* Define if LLVM_ENABLE_DUMP is enabled */
 +/* #undef LLVM_ENABLE_DUMP */
 +
 +/* Target triple LLVM will generate code for by default */
 +/* Doesn't use `cmakedefine` because it is allowed to be empty. */
 +/* #undef LLVM_DEFAULT_TARGET_TRIPLE */
 +
 +/* Define if threads enabled */
 +#define LLVM_ENABLE_THREADS 1
 +
 +/* Has gcc/MSVC atomic intrinsics */
 +#define LLVM_HAS_ATOMICS 1
 +
 +/* Host triple LLVM will be executed on */
 +/* #undef LLVM_HOST_TRIPLE */
 +
 +/* LLVM architecture name for the native architecture, if available */
 +/* #undef LLVM_NATIVE_ARCH */
 +
 +/* LLVM name for the native AsmParser init function, if available */
 +/* #undef LLVM_NATIVE_ASMPARSER */
 +
 +/* LLVM name for the native AsmPrinter init function, if available */
 +/* #undef LLVM_NATIVE_ASMPRINTER */
 +
 +/* LLVM name for the native Disassembler init function, if available */
 +/* #undef LLVM_NATIVE_DISASSEMBLER */
 +
 +/* LLVM name for the native Target init function, if available */
 +/* #undef LLVM_NATIVE_TARGET */
 +
 +/* LLVM name for the native TargetInfo init function, if available */
 +/* #undef LLVM_NATIVE_TARGETINFO */
 +
 +/* LLVM name for the native target MC init function, if available */
 +/* #undef LLVM_NATIVE_TARGETMC */
 +
 +/* LLVM name for the native target MCA init function, if available */
 +/* #undef LLVM_NATIVE_TARGETMCA */
 +
 +/* Define if this is Unixish platform */
 +#define LLVM_ON_UNIX 1
 +
 +/* Define if we have the Intel JIT API runtime support library */
 +#define LLVM_USE_INTEL_JITEVENTS 0
 +
 +/* Define if we have the oprofile JIT-support library */
 +#define LLVM_USE_OPROFILE 0
 +
 +/* Define if we have the perf JIT-support library */
 +#define LLVM_USE_PERF 0
 +
 +/* Major version of the LLVM API */
 +#define LLVM_VERSION_MAJOR 17
 +
 +/* Minor version of the LLVM API */
 +#define LLVM_VERSION_MINOR 0
 +
 +/* Patch version of the LLVM API */
 +#define LLVM_VERSION_PATCH 0
 +
 +/* LLVM version string */
- #define LLVM_VERSION_STRING "17.0.0git"
++#define LLVM_VERSION_STRING "17.0.0rc"
 +
 +/* Whether LLVM records statistics for use with GetStatistics(),
 + * PrintStatistics() or PrintStatisticsJSON()
 + */
 +#define LLVM_FORCE_ENABLE_STATS 0
 +
 +/* Define if we have z3 and want to build it */
 +/* #undef LLVM_WITH_Z3 */
 +
 +/* Define if we have curl and want to use it */
 +/* #undef LLVM_ENABLE_CURL */
 +
 +/* Define if we have cpp-httplib and want to use it */
 +/* #undef LLVM_ENABLE_HTTPLIB */
 +
 +/* Define if zlib compression is available */
 +#define LLVM_ENABLE_ZLIB 1
 +
 +/* Define if zstd compression is available */
 +#define LLVM_ENABLE_ZSTD 1
 +
 +/* Define if LLVM is using tflite instead of libtensorflow */
 +/* #undef LLVM_HAVE_TFLITE */
 +
 +/* Define to 1 if you have the <sysexits.h> header file. */
 +#define HAVE_SYSEXITS_H 1
 +
 +/* Define if the xar_open() function is supported on this platform. */
 +#if defined(__APPLE__)
 +#define LLVM_HAVE_LIBXAR 1
 +#endif
 +
 +/* Define if building libLLVM shared library */
 +/* #undef LLVM_BUILD_LLVM_DYLIB */
 +
 +/* Define if building LLVM with BUILD_SHARED_LIBS */
 +/* #undef LLVM_BUILD_SHARED_LIBS */
 +
 +/* Define if building LLVM with LLVM_FORCE_USE_OLD_TOOLCHAIN_LIBS */
 +/* #undef LLVM_FORCE_USE_OLD_TOOLCHAIN */
 +
 +/* Define if llvm_unreachable should be optimized with undefined behavior
 + * in non assert builds */
 +#define LLVM_UNREACHABLE_OPTIMIZE 1
 +
 +/* Define to 1 if you have the DIA SDK installed, and to 0 if you don't. */
 +#define LLVM_ENABLE_DIA_SDK 0
 +
 +/* Define if plugins enabled */
 +/* #undef LLVM_ENABLE_PLUGINS */
 +
 +#endif
diff --cc lib/clang/include/llvm/Support/VCSRevision.h
index 8bcae47e7373,000000000000..3fe424f06278
mode 100644,000000..100644
--- a/lib/clang/include/llvm/Support/VCSRevision.h
+++ b/lib/clang/include/llvm/Support/VCSRevision.h
@@@ -1,2 -1,0 +1,2 @@@
- #define LLVM_REVISION "llvmorg-17-init-19304-gd0b54bb50e51"
++#define LLVM_REVISION "llvmorg-17.0.0-rc4-10-g0176e8729ea4"
 +#define LLVM_REPOSITORY "https://github.com/llvm/llvm-project.git"
diff --cc lib/libc++/__config_site
index 86c6b3a278ca,000000000000..858699c83b3d
mode 100644,000000..100644
--- a/lib/libc++/__config_site
+++ b/lib/libc++/__config_site
@@@ -1,53 -1,0 +1,54 @@@
 +//===----------------------------------------------------------------------===//
 +//
 +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
 +// See https://llvm.org/LICENSE.txt for license information.
 +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
 +//
 +//===----------------------------------------------------------------------===//
 +
 +#ifndef _LIBCPP___CONFIG_SITE
 +#define _LIBCPP___CONFIG_SITE
 +
 +#define _LIBCPP_ABI_VERSION 1
 +#define _LIBCPP_ABI_NAMESPACE __1
 +/* #undef _LIBCPP_ABI_FORCE_ITANIUM */
 +/* #undef _LIBCPP_ABI_FORCE_MICROSOFT */
 +/* #undef _LIBCPP_HAS_NO_THREADS */
 +/* #undef _LIBCPP_HAS_NO_MONOTONIC_CLOCK */
 +/* #undef _LIBCPP_HAS_MUSL_LIBC */
 +/* #undef _LIBCPP_HAS_THREAD_API_PTHREAD */
 +/* #undef _LIBCPP_HAS_THREAD_API_EXTERNAL */
 +/* #undef _LIBCPP_HAS_THREAD_API_WIN32 */
 +/* #undef _LIBCPP_DISABLE_VISIBILITY_ANNOTATIONS */
 +#define _LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS
 +/* #undef _LIBCPP_NO_VCRUNTIME */
 +/* #undef _LIBCPP_TYPEINFO_COMPARISON_IMPLEMENTATION */
 +/* #undef _LIBCPP_HAS_NO_FILESYSTEM */
 +/* #undef _LIBCPP_HAS_NO_RANDOM_DEVICE */
 +/* #undef _LIBCPP_HAS_NO_LOCALIZATION */
 +/* #undef _LIBCPP_HAS_NO_WIDE_CHARACTERS */
++#define _LIBCPP_ENABLE_ASSERTIONS_DEFAULT 0
 +
 +// PSTL backends
 +/* #undef _LIBCPP_PSTL_CPU_BACKEND_SERIAL */
 +#define _LIBCPP_PSTL_CPU_BACKEND_THREAD
 +/* #undef _LIBCPP_PSTL_CPU_BACKEND_LIBDISPATCH */
 +
 +// Hardening.
 +#define _LIBCPP_ENABLE_HARDENED_MODE_DEFAULT 0
 +#define _LIBCPP_ENABLE_DEBUG_MODE_DEFAULT 0
 +
 +// __USE_MINGW_ANSI_STDIO gets redefined on MinGW
 +#ifdef __clang__
 +#  pragma clang diagnostic push
 +#  pragma clang diagnostic ignored "-Wmacro-redefined"
 +#endif
 +
 +
 +
 +
 +#ifdef __clang__
 +#  pragma clang diagnostic pop
 +#endif
 +
 +#endif // _LIBCPP___CONFIG_SITE
diff --cc lib/libc++/module.modulemap
index eaab0af43e6f,000000000000..e3929e56525b
mode 100644,000000..100644
--- a/lib/libc++/module.modulemap
+++ b/lib/libc++/module.modulemap
@@@ -1,2076 -1,0 +1,2061 @@@
 +// Main C++ standard library interfaces
 +module std_algorithm [system] {
 +  header "algorithm"
 +  export *
 +}
 +module std_any [system] {
 +  header "any"
 +  export *
 +}
 +module std_array [system] {
 +  header "array"
 +  export *
 +}
 +module std_atomic [system] {
 +  header "atomic"
 +  export *
 +}
 +module std_barrier [system] {
-   
 +  header "barrier"
 +  export *
 +}
 +module std_bit [system] {
 +  header "bit"
 +  export *
 +}
 +module std_bitset [system] {
 +  header "bitset"
 +  export *
 +}
 +module std_charconv [system] {
 +  header "charconv"
 +  export *
 +}
 +module std_chrono [system] {
 +  header "chrono"
 +  export *
 +}
 +module std_codecvt [system] {
-   
 +  header "codecvt"
 +  export *
 +}
 +module std_compare [system] {
 +  header "compare"
 +  export *
 +}
 +module std_complex [system] {
 +  header "complex"
 +  export *
 +}
 +module std_concepts [system] {
 +  header "concepts"
 +  export *
 +}
 +module std_condition_variable [system] {
 +  header "condition_variable"
 +  export *
 +}
 +module std_coroutine [system] {
 +  header "coroutine"
 +  export *
 +}
 +module std_deque [system] {
 +  header "deque"
*** 2036 LINES SKIPPED ***