aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/clang/headers/Makefile1
-rw-r--r--lib/clang/include/VCSVersion.inc6
-rw-r--r--lib/clang/include/lld/Common/Version.inc2
-rw-r--r--lib/clang/include/llvm/Config/llvm-config.h3
-rw-r--r--lib/clang/include/llvm/Support/VCSRevision.h2
-rw-r--r--lib/clang/libclang/Makefile6
-rw-r--r--lib/clang/liblldb/LLDBWrapLua.cpp215
-rw-r--r--lib/clang/liblldb/Makefile1
-rw-r--r--lib/clang/libllvm/Makefile6
-rw-r--r--lib/libc++/Makefile43
-rw-r--r--lib/libc++/__config_site1
-rw-r--r--lib/libc++/module.modulemap41
12 files changed, 315 insertions, 12 deletions
diff --git a/lib/clang/headers/Makefile b/lib/clang/headers/Makefile
index fc0ae67e8167..58a5d458667f 100644
--- a/lib/clang/headers/Makefile
+++ b/lib/clang/headers/Makefile
@@ -116,6 +116,7 @@ INCS+= pmmintrin.h
INCS+= popcntintrin.h
INCS+= prfchwintrin.h
INCS+= ptwriteintrin.h
+INCS+= rdpruintrin.h
INCS+= rdseedintrin.h
INCS+= rtmintrin.h
INCS+= s390intrin.h
diff --git a/lib/clang/include/VCSVersion.inc b/lib/clang/include/VCSVersion.inc
index bd6bdb1a4d3d..e9bb6a550056 100644
--- a/lib/clang/include/VCSVersion.inc
+++ b/lib/clang/include/VCSVersion.inc
@@ -1,10 +1,10 @@
// $FreeBSD$
-#define LLVM_REVISION "llvmorg-15-init-15358-g53dc0f107877"
+#define LLVM_REVISION "llvmorg-15-init-16436-g18a6ab5b8d1f"
#define LLVM_REPOSITORY "https://github.com/llvm/llvm-project.git"
-#define CLANG_REVISION "llvmorg-15-init-15358-g53dc0f107877"
+#define CLANG_REVISION "llvmorg-15-init-16436-g18a6ab5b8d1f"
#define CLANG_REPOSITORY "https://github.com/llvm/llvm-project.git"
-#define LLDB_REVISION "llvmorg-15-init-15358-g53dc0f107877"
+#define LLDB_REVISION "llvmorg-15-init-16436-g18a6ab5b8d1f"
#define LLDB_REPOSITORY "https://github.com/llvm/llvm-project.git"
diff --git a/lib/clang/include/lld/Common/Version.inc b/lib/clang/include/lld/Common/Version.inc
index 231706407ac3..2698fc5bc28a 100644
--- a/lib/clang/include/lld/Common/Version.inc
+++ b/lib/clang/include/lld/Common/Version.inc
@@ -1,4 +1,4 @@
// Local identifier in __FreeBSD_version style
#define LLD_FREEBSD_VERSION 1400005
-#define LLD_VERSION_STRING "15.0.0 (FreeBSD llvmorg-15-init-15358-g53dc0f107877-" __XSTRING(LLD_FREEBSD_VERSION) ")"
+#define LLD_VERSION_STRING "15.0.0 (FreeBSD llvmorg-15-init-16436-g18a6ab5b8d1f-" __XSTRING(LLD_FREEBSD_VERSION) ")"
diff --git a/lib/clang/include/llvm/Config/llvm-config.h b/lib/clang/include/llvm/Config/llvm-config.h
index 8eb534276537..87a438f1516a 100644
--- a/lib/clang/include/llvm/Config/llvm-config.h
+++ b/lib/clang/include/llvm/Config/llvm-config.h
@@ -90,6 +90,9 @@
/* 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
diff --git a/lib/clang/include/llvm/Support/VCSRevision.h b/lib/clang/include/llvm/Support/VCSRevision.h
index 68f120bc4f43..77ec4d2b35ca 100644
--- a/lib/clang/include/llvm/Support/VCSRevision.h
+++ b/lib/clang/include/llvm/Support/VCSRevision.h
@@ -1,3 +1,3 @@
/* $FreeBSD$ */
-#define LLVM_REVISION "llvmorg-15-init-15358-g53dc0f107877"
+#define LLVM_REVISION "llvmorg-15-init-16436-g18a6ab5b8d1f"
#define LLVM_REPOSITORY "https://github.com/llvm/llvm-project.git"
diff --git a/lib/clang/libclang/Makefile b/lib/clang/libclang/Makefile
index 90a6b6a7e29d..7be8a7442dc1 100644
--- a/lib/clang/libclang/Makefile
+++ b/lib/clang/libclang/Makefile
@@ -192,6 +192,7 @@ SRCS_MIN+= Basic/FileSystemStatCache.cpp
SRCS_MIN+= Basic/IdentifierTable.cpp
SRCS_MIN+= Basic/LangOptions.cpp
SRCS_MIN+= Basic/LangStandards.cpp
+SRCS_MIN+= Basic/MakeSupport.cpp
SRCS_MIN+= Basic/Module.cpp
SRCS_MIN+= Basic/NoSanitizeList.cpp
SRCS_MIN+= Basic/ObjCRuntime.cpp
@@ -487,6 +488,7 @@ SRCS_MIN+= Sema/AnalysisBasedWarnings.cpp
SRCS_MIN+= Sema/CodeCompleteConsumer.cpp
SRCS_MIN+= Sema/DeclSpec.cpp
SRCS_MIN+= Sema/DelayedDiagnostic.cpp
+SRCS_MIN+= Sema/HLSLExternalSemaSource.cpp
SRCS_MIN+= Sema/IdentifierResolver.cpp
SRCS_MIN+= Sema/JumpDiagnostics.cpp
SRCS_MIN+= Sema/MultiplexExternalSemaSource.cpp
@@ -584,6 +586,9 @@ SRCS_FUL+= StaticAnalyzer/Checkers/DivZeroChecker.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/DynamicTypeChecker.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/EnumCastOutOfRangeChecker.cpp
+SRCS_FUL+= StaticAnalyzer/Checkers/ErrnoChecker.cpp
+SRCS_FUL+= StaticAnalyzer/Checkers/ErrnoModeling.cpp
+SRCS_FUL+= StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/FixedAddressChecker.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/FuchsiaHandleChecker.cpp
@@ -652,6 +657,7 @@ SRCS_FUL+= StaticAnalyzer/Checkers/TaintTesterChecker.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/TraversalChecker.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/TrustNonnullChecker.cpp
+SRCS_FUL+= StaticAnalyzer/Checkers/TrustReturnsNonnullChecker.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/UndefBranchChecker.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp
SRCS_FUL+= StaticAnalyzer/Checkers/UndefResultChecker.cpp
diff --git a/lib/clang/liblldb/LLDBWrapLua.cpp b/lib/clang/liblldb/LLDBWrapLua.cpp
index 336a4d45349a..ad8150bd4cea 100644
--- a/lib/clang/liblldb/LLDBWrapLua.cpp
+++ b/lib/clang/liblldb/LLDBWrapLua.cpp
@@ -44195,6 +44195,30 @@ fail:
}
+static int _wrap_SBSection_GetAlignment(lua_State* L) {
+ int SWIG_arg = 0;
+ lldb::SBSection *arg1 = (lldb::SBSection *) 0 ;
+ uint32_t result;
+
+ SWIG_check_num_args("lldb::SBSection::GetAlignment",1,1)
+ if(!SWIG_isptrtype(L,1)) SWIG_fail_arg("lldb::SBSection::GetAlignment",1,"lldb::SBSection *");
+
+ if (!SWIG_IsOK(SWIG_ConvertPtr(L,1,(void**)&arg1,SWIGTYPE_p_lldb__SBSection,0))){
+ SWIG_fail_ptr("SBSection_GetAlignment",1,SWIGTYPE_p_lldb__SBSection);
+ }
+
+ result = (uint32_t)(arg1)->GetAlignment();
+ lua_pushinteger(L, (lua_Integer) result); SWIG_arg++;
+ return SWIG_arg;
+
+ if(0) SWIG_fail;
+
+fail:
+ lua_error(L);
+ return SWIG_arg;
+}
+
+
static int _wrap_SBSection_GetDescription(lua_State* L) {
int SWIG_arg = 0;
lldb::SBSection *arg1 = (lldb::SBSection *) 0 ;
@@ -44312,6 +44336,7 @@ static swig_lua_method swig_SBSection_methods[]= {
{ "GetSectionType", _wrap_SBSection_GetSectionType},
{ "GetPermissions", _wrap_SBSection_GetPermissions},
{ "GetTargetByteSize", _wrap_SBSection_GetTargetByteSize},
+ { "GetAlignment", _wrap_SBSection_GetAlignment},
{ "GetDescription", _wrap_SBSection_GetDescription},
{ "__eq", _wrap_SBSection___eq},
{ "__tostring", _wrap_SBSection___tostring},
@@ -58700,6 +58725,180 @@ fail:
}
+static int _wrap_SBTrace_SaveToDisk__SWIG_0(lua_State* L) {
+ int SWIG_arg = 0;
+ lldb::SBTrace *arg1 = (lldb::SBTrace *) 0 ;
+ lldb::SBError *arg2 = 0 ;
+ lldb::SBFileSpec *arg3 = 0 ;
+ bool arg4 ;
+ lldb::SBFileSpec result;
+
+ SWIG_check_num_args("lldb::SBTrace::SaveToDisk",4,4)
+ if(!SWIG_isptrtype(L,1)) SWIG_fail_arg("lldb::SBTrace::SaveToDisk",1,"lldb::SBTrace *");
+ if(!lua_isuserdata(L,2)) SWIG_fail_arg("lldb::SBTrace::SaveToDisk",2,"lldb::SBError &");
+ if(!lua_isuserdata(L,3)) SWIG_fail_arg("lldb::SBTrace::SaveToDisk",3,"lldb::SBFileSpec const &");
+ if(!lua_isboolean(L,4)) SWIG_fail_arg("lldb::SBTrace::SaveToDisk",4,"bool");
+
+ if (!SWIG_IsOK(SWIG_ConvertPtr(L,1,(void**)&arg1,SWIGTYPE_p_lldb__SBTrace,0))){
+ SWIG_fail_ptr("SBTrace_SaveToDisk",1,SWIGTYPE_p_lldb__SBTrace);
+ }
+
+
+ if (!SWIG_IsOK(SWIG_ConvertPtr(L,2,(void**)&arg2,SWIGTYPE_p_lldb__SBError,0))){
+ SWIG_fail_ptr("SBTrace_SaveToDisk",2,SWIGTYPE_p_lldb__SBError);
+ }
+
+
+ if (!SWIG_IsOK(SWIG_ConvertPtr(L,3,(void**)&arg3,SWIGTYPE_p_lldb__SBFileSpec,0))){
+ SWIG_fail_ptr("SBTrace_SaveToDisk",3,SWIGTYPE_p_lldb__SBFileSpec);
+ }
+
+ arg4 = (lua_toboolean(L, 4)!=0);
+ result = (arg1)->SaveToDisk(*arg2,(lldb::SBFileSpec const &)*arg3,arg4);
+ {
+ lldb::SBFileSpec * resultptr = new lldb::SBFileSpec((const lldb::SBFileSpec &) result);
+ SWIG_NewPointerObj(L,(void *) resultptr,SWIGTYPE_p_lldb__SBFileSpec,1); SWIG_arg++;
+ }
+ return SWIG_arg;
+
+ if(0) SWIG_fail;
+
+fail:
+ lua_error(L);
+ return SWIG_arg;
+}
+
+
+static int _wrap_SBTrace_SaveToDisk__SWIG_1(lua_State* L) {
+ int SWIG_arg = 0;
+ lldb::SBTrace *arg1 = (lldb::SBTrace *) 0 ;
+ lldb::SBError *arg2 = 0 ;
+ lldb::SBFileSpec *arg3 = 0 ;
+ lldb::SBFileSpec result;
+
+ SWIG_check_num_args("lldb::SBTrace::SaveToDisk",3,3)
+ if(!SWIG_isptrtype(L,1)) SWIG_fail_arg("lldb::SBTrace::SaveToDisk",1,"lldb::SBTrace *");
+ if(!lua_isuserdata(L,2)) SWIG_fail_arg("lldb::SBTrace::SaveToDisk",2,"lldb::SBError &");
+ if(!lua_isuserdata(L,3)) SWIG_fail_arg("lldb::SBTrace::SaveToDisk",3,"lldb::SBFileSpec const &");
+
+ if (!SWIG_IsOK(SWIG_ConvertPtr(L,1,(void**)&arg1,SWIGTYPE_p_lldb__SBTrace,0))){
+ SWIG_fail_ptr("SBTrace_SaveToDisk",1,SWIGTYPE_p_lldb__SBTrace);
+ }
+
+
+ if (!SWIG_IsOK(SWIG_ConvertPtr(L,2,(void**)&arg2,SWIGTYPE_p_lldb__SBError,0))){
+ SWIG_fail_ptr("SBTrace_SaveToDisk",2,SWIGTYPE_p_lldb__SBError);
+ }
+
+
+ if (!SWIG_IsOK(SWIG_ConvertPtr(L,3,(void**)&arg3,SWIGTYPE_p_lldb__SBFileSpec,0))){
+ SWIG_fail_ptr("SBTrace_SaveToDisk",3,SWIGTYPE_p_lldb__SBFileSpec);
+ }
+
+ result = (arg1)->SaveToDisk(*arg2,(lldb::SBFileSpec const &)*arg3);
+ {
+ lldb::SBFileSpec * resultptr = new lldb::SBFileSpec((const lldb::SBFileSpec &) result);
+ SWIG_NewPointerObj(L,(void *) resultptr,SWIGTYPE_p_lldb__SBFileSpec,1); SWIG_arg++;
+ }
+ return SWIG_arg;
+
+ if(0) SWIG_fail;
+
+fail:
+ lua_error(L);
+ return SWIG_arg;
+}
+
+
+static int _wrap_SBTrace_SaveToDisk(lua_State* L) {
+ int argc;
+ int argv[5]={
+ 1,2,3,4,5
+ };
+
+ argc = lua_gettop(L);
+ if (argc == 3) {
+ int _v;
+ {
+ void *ptr;
+ if (SWIG_isptrtype(L,argv[0])==0 || SWIG_ConvertPtr(L,argv[0], (void **) &ptr, SWIGTYPE_p_lldb__SBTrace, 0)) {
+ _v = 0;
+ } else {
+ _v = 1;
+ }
+ }
+ if (_v) {
+ {
+ void *ptr;
+ if (lua_isuserdata(L,argv[1])==0 || SWIG_ConvertPtr(L,argv[1], (void **) &ptr, SWIGTYPE_p_lldb__SBError, SWIG_POINTER_NO_NULL)) {
+ _v = 0;
+ } else {
+ _v = 1;
+ }
+ }
+ if (_v) {
+ {
+ void *ptr;
+ if (lua_isuserdata(L,argv[2])==0 || SWIG_ConvertPtr(L,argv[2], (void **) &ptr, SWIGTYPE_p_lldb__SBFileSpec, SWIG_POINTER_NO_NULL)) {
+ _v = 0;
+ } else {
+ _v = 1;
+ }
+ }
+ if (_v) {
+ return _wrap_SBTrace_SaveToDisk__SWIG_1(L);
+ }
+ }
+ }
+ }
+ if (argc == 4) {
+ int _v;
+ {
+ void *ptr;
+ if (SWIG_isptrtype(L,argv[0])==0 || SWIG_ConvertPtr(L,argv[0], (void **) &ptr, SWIGTYPE_p_lldb__SBTrace, 0)) {
+ _v = 0;
+ } else {
+ _v = 1;
+ }
+ }
+ if (_v) {
+ {
+ void *ptr;
+ if (lua_isuserdata(L,argv[1])==0 || SWIG_ConvertPtr(L,argv[1], (void **) &ptr, SWIGTYPE_p_lldb__SBError, SWIG_POINTER_NO_NULL)) {
+ _v = 0;
+ } else {
+ _v = 1;
+ }
+ }
+ if (_v) {
+ {
+ void *ptr;
+ if (lua_isuserdata(L,argv[2])==0 || SWIG_ConvertPtr(L,argv[2], (void **) &ptr, SWIGTYPE_p_lldb__SBFileSpec, SWIG_POINTER_NO_NULL)) {
+ _v = 0;
+ } else {
+ _v = 1;
+ }
+ }
+ if (_v) {
+ {
+ _v = lua_isboolean(L,argv[3]);
+ }
+ if (_v) {
+ return _wrap_SBTrace_SaveToDisk__SWIG_0(L);
+ }
+ }
+ }
+ }
+ }
+
+ SWIG_Lua_pusherrstring(L,"Wrong arguments for overloaded function 'SBTrace_SaveToDisk'\n"
+ " Possible C/C++ prototypes are:\n"
+ " lldb::SBTrace::SaveToDisk(lldb::SBError &,lldb::SBFileSpec const &,bool)\n"
+ " lldb::SBTrace::SaveToDisk(lldb::SBError &,lldb::SBFileSpec const &)\n");
+ lua_error(L);return 0;
+}
+
+
static int _wrap_SBTrace_Start__SWIG_0(lua_State* L) {
int SWIG_arg = 0;
lldb::SBTrace *arg1 = (lldb::SBTrace *) 0 ;
@@ -59005,6 +59204,7 @@ static swig_lua_attribute swig_SBTrace_attributes[] = {
};
static swig_lua_method swig_SBTrace_methods[]= {
{ "GetStartConfigurationHelp", _wrap_SBTrace_GetStartConfigurationHelp},
+ { "SaveToDisk", _wrap_SBTrace_SaveToDisk},
{ "Start", _wrap_SBTrace_Start},
{ "Stop", _wrap_SBTrace_Stop},
{ "IsValid", _wrap_SBTrace_IsValid},
@@ -72458,11 +72658,15 @@ static swig_lua_const_info swig_SwigModule_constants[]= {
{SWIG_LUA_CONSTTAB_INT("eExpressionEvaluationIRGen", lldb::eExpressionEvaluationIRGen)},
{SWIG_LUA_CONSTTAB_INT("eExpressionEvaluationExecution", lldb::eExpressionEvaluationExecution)},
{SWIG_LUA_CONSTTAB_INT("eExpressionEvaluationComplete", lldb::eExpressionEvaluationComplete)},
- {SWIG_LUA_CONSTTAB_INT("eTraceInstructionControlFlowTypeInstruction", lldb::eTraceInstructionControlFlowTypeInstruction)},
- {SWIG_LUA_CONSTTAB_INT("eTraceInstructionControlFlowTypeBranch", lldb::eTraceInstructionControlFlowTypeBranch)},
- {SWIG_LUA_CONSTTAB_INT("eTraceInstructionControlFlowTypeTakenBranch", lldb::eTraceInstructionControlFlowTypeTakenBranch)},
- {SWIG_LUA_CONSTTAB_INT("eTraceInstructionControlFlowTypeCall", lldb::eTraceInstructionControlFlowTypeCall)},
- {SWIG_LUA_CONSTTAB_INT("eTraceInstructionControlFlowTypeReturn", lldb::eTraceInstructionControlFlowTypeReturn)},
+ {SWIG_LUA_CONSTTAB_INT("eInstructionControlFlowKindUnknown", lldb::eInstructionControlFlowKindUnknown)},
+ {SWIG_LUA_CONSTTAB_INT("eInstructionControlFlowKindOther", lldb::eInstructionControlFlowKindOther)},
+ {SWIG_LUA_CONSTTAB_INT("eInstructionControlFlowKindCall", lldb::eInstructionControlFlowKindCall)},
+ {SWIG_LUA_CONSTTAB_INT("eInstructionControlFlowKindReturn", lldb::eInstructionControlFlowKindReturn)},
+ {SWIG_LUA_CONSTTAB_INT("eInstructionControlFlowKindJump", lldb::eInstructionControlFlowKindJump)},
+ {SWIG_LUA_CONSTTAB_INT("eInstructionControlFlowKindCondJump", lldb::eInstructionControlFlowKindCondJump)},
+ {SWIG_LUA_CONSTTAB_INT("eInstructionControlFlowKindFarCall", lldb::eInstructionControlFlowKindFarCall)},
+ {SWIG_LUA_CONSTTAB_INT("eInstructionControlFlowKindFarReturn", lldb::eInstructionControlFlowKindFarReturn)},
+ {SWIG_LUA_CONSTTAB_INT("eInstructionControlFlowKindFarJump", lldb::eInstructionControlFlowKindFarJump)},
{SWIG_LUA_CONSTTAB_INT("eWatchpointKindWrite", lldb::eWatchpointKindWrite)},
{SWIG_LUA_CONSTTAB_INT("eWatchpointKindRead", lldb::eWatchpointKindRead)},
{SWIG_LUA_CONSTTAB_INT("eGdbSignalBadAccess", lldb::eGdbSignalBadAccess)},
@@ -72533,6 +72737,7 @@ static swig_lua_const_info swig_SwigModule_constants[]= {
{SWIG_LUA_CONSTTAB_INT("eTraceCounterTSC", lldb::eTraceCounterTSC)},
{SWIG_LUA_CONSTTAB_INT("eTraceEventDisabledSW", lldb::eTraceEventDisabledSW)},
{SWIG_LUA_CONSTTAB_INT("eTraceEventDisabledHW", lldb::eTraceEventDisabledHW)},
+ {SWIG_LUA_CONSTTAB_INT("eTraceEventCPUChanged", lldb::eTraceEventCPUChanged)},
{SWIG_LUA_CONSTTAB_INT("eTraceItemKindError", lldb::eTraceItemKindError)},
{SWIG_LUA_CONSTTAB_INT("eTraceItemKindEvent", lldb::eTraceItemKindEvent)},
{SWIG_LUA_CONSTTAB_INT("eTraceItemKindInstruction", lldb::eTraceItemKindInstruction)},
diff --git a/lib/clang/liblldb/Makefile b/lib/clang/liblldb/Makefile
index c30a179df3b4..3f55457949fb 100644
--- a/lib/clang/liblldb/Makefile
+++ b/lib/clang/liblldb/Makefile
@@ -212,6 +212,7 @@ SRCS+= DataFormatters/TypeSynthetic.cpp
SRCS+= DataFormatters/ValueObjectPrinter.cpp
SRCS+= DataFormatters/VectorType.cpp
SRCS+= Expression/DWARFExpression.cpp
+SRCS+= Expression/DWARFExpressionList.cpp
SRCS+= Expression/DiagnosticManager.cpp
SRCS+= Expression/Expression.cpp
SRCS+= Expression/ExpressionVariable.cpp
diff --git a/lib/clang/libllvm/Makefile b/lib/clang/libllvm/Makefile
index a025f37efdbe..ccad535c1eca 100644
--- a/lib/clang/libllvm/Makefile
+++ b/lib/clang/libllvm/Makefile
@@ -643,6 +643,9 @@ SRCS_XDB+= ExecutionEngine/GDBRegistrationListener.cpp
SRCS_XDB+= ExecutionEngine/Interpreter/Execution.cpp
SRCS_XDB+= ExecutionEngine/Interpreter/ExternalFunctions.cpp
SRCS_XDB+= ExecutionEngine/Interpreter/Interpreter.cpp
+SRCS_EXT+= ExecutionEngine/JITLink/COFF.cpp
+SRCS_EXT+= ExecutionEngine/JITLink/COFF_x86_64.cpp
+SRCS_EXT+= ExecutionEngine/JITLink/COFFLinkGraphBuilder.cpp
SRCS_EXT+= ExecutionEngine/JITLink/DWARFRecordSectionSplitter.cpp
SRCS_EXT+= ExecutionEngine/JITLink/EHFrameSupport.cpp
SRCS_EXT+= ExecutionEngine/JITLink/ELF.cpp
@@ -1550,6 +1553,7 @@ SRCS_MIN+= Target/X86/X86PreAMXConfig.cpp
SRCS_MIN+= Target/X86/X86PreTileConfig.cpp
SRCS_MIN+= Target/X86/X86RegisterBankInfo.cpp
SRCS_MIN+= Target/X86/X86RegisterInfo.cpp
+SRCS_MIN+= Target/X86/X86ReturnThunks.cpp
SRCS_MIN+= Target/X86/X86SelectionDAGInfo.cpp
SRCS_MIN+= Target/X86/X86ShuffleDecodeConstantPool.cpp
SRCS_MIN+= Target/X86/X86SpeculativeExecutionSideEffectSuppression.cpp
@@ -1919,7 +1923,7 @@ llvm/IR/IntrinsicImpl.inc: ${LLVM_SRCS}/include/llvm/IR/Intrinsics.td
TGHDRS+= llvm/IR/IntrinsicImpl.inc
.for arch in \
- AArch64/aarch64 AMDGPU/amdgcn ARM/arm BPF/bpf DirectX/dxil \
+ AArch64/aarch64 AMDGPU/amdgcn ARM/arm BPF/bpf DirectX/dx \
Hexagon/hexagon Mips/mips NVPTX/nvvm PowerPC/ppc R600/r600 RISCV/riscv \
S390/s390 VE/ve WebAssembly/wasm X86/x86 XCore/xcore
llvm/IR/Intrinsics${arch:H}.h: ${LLVM_SRCS}/include/llvm/IR/Intrinsics.td
diff --git a/lib/libc++/Makefile b/lib/libc++/Makefile
index 3e6b852e642d..f4a28af03790 100644
--- a/lib/libc++/Makefile
+++ b/lib/libc++/Makefile
@@ -336,21 +336,31 @@ ALG_HEADERS+= ranges_copy_n.h
ALG_HEADERS+= ranges_count.h
ALG_HEADERS+= ranges_count_if.h
ALG_HEADERS+= ranges_equal.h
+ALG_HEADERS+= ranges_equal_range.h
ALG_HEADERS+= ranges_fill.h
ALG_HEADERS+= ranges_fill_n.h
ALG_HEADERS+= ranges_find.h
+ALG_HEADERS+= ranges_find_end.h
ALG_HEADERS+= ranges_find_first_of.h
ALG_HEADERS+= ranges_find_if.h
ALG_HEADERS+= ranges_find_if_not.h
ALG_HEADERS+= ranges_for_each.h
ALG_HEADERS+= ranges_for_each_n.h
+ALG_HEADERS+= ranges_generate.h
+ALG_HEADERS+= ranges_generate_n.h
+ALG_HEADERS+= ranges_includes.h
+ALG_HEADERS+= ranges_inplace_merge.h
+ALG_HEADERS+= ranges_is_heap.h
+ALG_HEADERS+= ranges_is_heap_until.h
ALG_HEADERS+= ranges_is_partitioned.h
ALG_HEADERS+= ranges_is_sorted.h
ALG_HEADERS+= ranges_is_sorted_until.h
ALG_HEADERS+= ranges_lexicographical_compare.h
ALG_HEADERS+= ranges_lower_bound.h
+ALG_HEADERS+= ranges_make_heap.h
ALG_HEADERS+= ranges_max.h
ALG_HEADERS+= ranges_max_element.h
+ALG_HEADERS+= ranges_merge.h
ALG_HEADERS+= ranges_min.h
ALG_HEADERS+= ranges_min_element.h
ALG_HEADERS+= ranges_minmax.h
@@ -359,13 +369,39 @@ ALG_HEADERS+= ranges_mismatch.h
ALG_HEADERS+= ranges_move.h
ALG_HEADERS+= ranges_move_backward.h
ALG_HEADERS+= ranges_none_of.h
+ALG_HEADERS+= ranges_nth_element.h
+ALG_HEADERS+= ranges_partial_sort_copy.h
+ALG_HEADERS+= ranges_partition.h
+ALG_HEADERS+= ranges_partition_copy.h
+ALG_HEADERS+= ranges_partition_point.h
+ALG_HEADERS+= ranges_pop_heap.h
+ALG_HEADERS+= ranges_push_heap.h
+ALG_HEADERS+= ranges_remove.h
+ALG_HEADERS+= ranges_remove_copy.h
+ALG_HEADERS+= ranges_remove_copy_if.h
+ALG_HEADERS+= ranges_remove_if.h
ALG_HEADERS+= ranges_replace.h
+ALG_HEADERS+= ranges_replace_copy.h
+ALG_HEADERS+= ranges_replace_copy_if.h
ALG_HEADERS+= ranges_replace_if.h
ALG_HEADERS+= ranges_reverse.h
+ALG_HEADERS+= ranges_reverse_copy.h
+ALG_HEADERS+= ranges_rotate_copy.h
+ALG_HEADERS+= ranges_search.h
+ALG_HEADERS+= ranges_search_n.h
+ALG_HEADERS+= ranges_set_difference.h
+ALG_HEADERS+= ranges_set_intersection.h
+ALG_HEADERS+= ranges_set_symmetric_difference.h
+ALG_HEADERS+= ranges_set_union.h
+ALG_HEADERS+= ranges_shuffle.h
ALG_HEADERS+= ranges_sort.h
+ALG_HEADERS+= ranges_sort_heap.h
+ALG_HEADERS+= ranges_stable_partition.h
ALG_HEADERS+= ranges_stable_sort.h
ALG_HEADERS+= ranges_swap_ranges.h
ALG_HEADERS+= ranges_transform.h
+ALG_HEADERS+= ranges_unique.h
+ALG_HEADERS+= ranges_unique_copy.h
ALG_HEADERS+= ranges_upper_bound.h
ALG_HEADERS+= remove.h
ALG_HEADERS+= remove_copy.h
@@ -505,6 +541,13 @@ COR_HEADERS+= trivial_awaitables.h
COR+= ${HDRDIR}/__coroutine/${hdr}
.endfor
+INCSGROUPS+= DBG
+DBGDIR= ${CXXINCLUDEDIR}/__debug_utils
+DBG_HEADERS+= randomize_range.h
+.for hdr in ${DBG_HEADERS}
+DBG+= ${HDRDIR}/__debug_utils/${hdr}
+.endfor
+
INCSGROUPS+= FS
FSDIR= ${CXXINCLUDEDIR}/__filesystem
FS_HEADERS+= copy_options.h
diff --git a/lib/libc++/__config_site b/lib/libc++/__config_site
index 2d7d5d73f0ff..af9b6af5eede 100644
--- a/lib/libc++/__config_site
+++ b/lib/libc++/__config_site
@@ -13,7 +13,6 @@
#define _LIBCPP_ABI_NAMESPACE __1
/* #undef _LIBCPP_ABI_FORCE_ITANIUM */
/* #undef _LIBCPP_ABI_FORCE_MICROSOFT */
-/* #undef _LIBCPP_HIDE_FROM_ABI_PER_TU_BY_DEFAULT */
/* #undef _LIBCPP_HAS_NO_THREADS */
/* #undef _LIBCPP_HAS_NO_MONOTONIC_CLOCK */
/* #undef _LIBCPP_HAS_MUSL_LIBC */
diff --git a/lib/libc++/module.modulemap b/lib/libc++/module.modulemap
index 75df8e58310f..0107fb6f417b 100644
--- a/lib/libc++/module.modulemap
+++ b/lib/libc++/module.modulemap
@@ -318,21 +318,31 @@ module std [system] {
module ranges_count { private header "__algorithm/ranges_count.h" }
module ranges_count_if { private header "__algorithm/ranges_count_if.h" }
module ranges_equal { private header "__algorithm/ranges_equal.h" }
+ module ranges_equal_range { private header "__algorithm/ranges_equal_range.h" }
module ranges_fill { private header "__algorithm/ranges_fill.h" }
module ranges_fill_n { private header "__algorithm/ranges_fill_n.h" }
module ranges_find { private header "__algorithm/ranges_find.h" }
+ module ranges_find_end { private header "__algorithm/ranges_find_end.h" }
module ranges_find_first_of { private header "__algorithm/ranges_find_first_of.h" }
module ranges_find_if { private header "__algorithm/ranges_find_if.h" }
module ranges_find_if_not { private header "__algorithm/ranges_find_if_not.h" }
module ranges_for_each { private header "__algorithm/ranges_for_each.h" }
module ranges_for_each_n { private header "__algorithm/ranges_for_each_n.h" }
+ module ranges_generate { private header "__algorithm/ranges_generate.h" }
+ module ranges_generate_n { private header "__algorithm/ranges_generate_n.h" }
+ module ranges_includes { private header "__algorithm/ranges_includes.h" }
+ module ranges_inplace_merge { private header "__algorithm/ranges_inplace_merge.h" }
+ module ranges_is_heap { private header "__algorithm/ranges_is_heap.h" }
+ module ranges_is_heap_until { private header "__algorithm/ranges_is_heap_until.h" }
module ranges_is_partitioned { private header "__algorithm/ranges_is_partitioned.h" }
module ranges_is_sorted { private header "__algorithm/ranges_is_sorted.h" }
module ranges_is_sorted_until { private header "__algorithm/ranges_is_sorted_until.h" }
module ranges_lexicographical_compare { private header "__algorithm/ranges_lexicographical_compare.h" }
module ranges_lower_bound { private header "__algorithm/ranges_lower_bound.h" }
+ module ranges_make_heap { private header "__algorithm/ranges_make_heap.h" }
module ranges_max { private header "__algorithm/ranges_max.h" }
module ranges_max_element { private header "__algorithm/ranges_max_element.h" }
+ module ranges_merge { private header "__algorithm/ranges_merge.h" }
module ranges_min { private header "__algorithm/ranges_min.h" }
module ranges_min_element { private header "__algorithm/ranges_min_element.h" }
module ranges_minmax { private header "__algorithm/ranges_minmax.h" }
@@ -341,13 +351,39 @@ module std [system] {
module ranges_move { private header "__algorithm/ranges_move.h" }
module ranges_move_backward { private header "__algorithm/ranges_move_backward.h" }
module ranges_none_of { private header "__algorithm/ranges_none_of.h" }
+ module ranges_nth_element { private header "__algorithm/ranges_nth_element.h" }
+ module ranges_partial_sort_copy { private header "__algorithm/ranges_partial_sort_copy.h" }
+ module ranges_partition { private header "__algorithm/ranges_partition.h" }
+ module ranges_partition_copy { private header "__algorithm/ranges_partition_copy.h" }
+ module ranges_partition_point { private header "__algorithm/ranges_partition_point.h" }
+ module ranges_pop_heap { private header "__algorithm/ranges_pop_heap.h" }
+ module ranges_push_heap { private header "__algorithm/ranges_push_heap.h" }
+ module ranges_remove { private header "__algorithm/ranges_remove.h" }
+ module ranges_remove_copy { private header "__algorithm/ranges_remove_copy.h" }
+ module ranges_remove_copy_if { private header "__algorithm/ranges_remove_copy_if.h" }
+ module ranges_remove_if { private header "__algorithm/ranges_remove_if.h" }
module ranges_replace { private header "__algorithm/ranges_replace.h" }
+ module ranges_replace_copy { private header "__algorithm/ranges_replace_copy.h" }
+ module ranges_replace_copy_if { private header "__algorithm/ranges_replace_copy_if.h" }
module ranges_replace_if { private header "__algorithm/ranges_replace_if.h" }
module ranges_reverse { private header "__algorithm/ranges_reverse.h" }
+ module ranges_reverse_copy { private header "__algorithm/ranges_reverse_copy.h" }
+ module ranges_rotate_copy { private header "__algorithm/ranges_rotate_copy.h" }
+ module ranges_search { private header "__algorithm/ranges_search.h" }
+ module ranges_search_n { private header "__algorithm/ranges_search_n.h" }
+ module ranges_set_difference { private header "__algorithm/ranges_set_difference.h" }
+ module ranges_set_intersection { private header "__algorithm/ranges_set_intersection.h" }
+ module ranges_set_symmetric_difference { private header "__algorithm/ranges_set_symmetric_difference.h" }
+ module ranges_set_union { private header "__algorithm/ranges_set_union.h" }
+ module ranges_shuffle { private header "__algorithm/ranges_shuffle.h" }
module ranges_sort { private header "__algorithm/ranges_sort.h" }
+ module ranges_sort_heap { private header "__algorithm/ranges_sort_heap.h" }
+ module ranges_stable_partition { private header "__algorithm/ranges_stable_partition.h" }
module ranges_stable_sort { private header "__algorithm/ranges_stable_sort.h" }
module ranges_swap_ranges { private header "__algorithm/ranges_swap_ranges.h" }
module ranges_transform { private header "__algorithm/ranges_transform.h" }
+ module ranges_unique { private header "__algorithm/ranges_unique.h" }
+ module ranges_unique_copy { private header "__algorithm/ranges_unique_copy.h" }
module ranges_upper_bound { private header "__algorithm/ranges_upper_bound.h" }
module remove { private header "__algorithm/remove.h" }
module remove_copy { private header "__algorithm/remove_copy.h" }
@@ -747,6 +783,11 @@ module std [system] {
header "latch"
export *
}
+
+ module __debug_utils {
+ module randomize_range { private header "__debug_utils/randomize_range.h" }
+ }
+
module limits {
header "limits"
export *