Skip to content

Commit 21d4c2f

Browse files
authored
Merge pull request #48700 from JuliaLang/vc/upgrade_llvm15
Update LLVM to 15.0.7
2 parents 056112e + 77c13ad commit 21d4c2f

26 files changed

+544
-540
lines changed

Make.inc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -480,7 +480,7 @@ FC := $(CROSS_COMPILE)gfortran
480480
ifeq ($(OS), Darwin)
481481
APPLE_ARCH := $(shell uname -m)
482482
ifneq ($(APPLE_ARCH),arm64)
483-
MACOSX_VERSION_MIN := 10.10
483+
MACOSX_VERSION_MIN := 10.14
484484
else
485485
MACOSX_VERSION_MIN := 11.0
486486
endif

deps/checksums/clang

Lines changed: 108 additions & 116 deletions
Large diffs are not rendered by default.

deps/checksums/lld

Lines changed: 108 additions & 116 deletions
Large diffs are not rendered by default.

deps/checksums/llvm

Lines changed: 218 additions & 234 deletions
Large diffs are not rendered by default.

deps/clang.version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
## jll artifact
22
# Clang (paired with LLVM, only here as a JLL download)
33
CLANG_JLL_NAME := Clang
4-
CLANG_JLL_VER := 14.0.6+3
4+
CLANG_JLL_VER := 15.0.7+5

deps/lld.version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
## jll artifact
22
LLD_JLL_NAME := LLD
3-
LLD_JLL_VER := 14.0.6+3
3+
LLD_JLL_VER := 15.0.7+5

deps/llvm-tools.version

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
## jll artifact
22
# LLVM_tools (downloads LLVM_jll to get things like `lit` and `opt`)
33
LLVM_TOOLS_JLL_NAME := LLVM
4-
LLVM_TOOLS_JLL_VER := 14.0.6+3
5-
LLVM_TOOLS_ASSERT_JLL_VER := 14.0.6+3
4+
LLVM_TOOLS_JLL_VER := 15.0.7+5
5+
LLVM_TOOLS_ASSERT_JLL_VER := 15.0.7+5

deps/llvm.version

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
## jll artifact
22
LLVM_JLL_NAME := libLLVM
3-
LLVM_ASSERT_JLL_VER := 14.0.5+3
4-
3+
LLVM_ASSERT_JLL_VER := 15.0.7+5
54
## source build
6-
LLVM_VER := 14.0.5
7-
LLVM_BRANCH=julia-14.0.6-3
8-
LLVM_SHA1=julia-14.0.6-3
5+
LLVM_VER := 15.0.7
6+
LLVM_BRANCH=julia-15.0.7-5
7+
LLVM_SHA1=julia-15.0.7-5

src/codegen.cpp

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9073,16 +9073,24 @@ extern "C" void jl_init_llvm(void)
90739073
clopt = llvmopts.lookup("unswitch-threshold");
90749074
if (clopt->getNumOccurrences() == 0)
90759075
cl::ProvidePositionalOption(clopt, "100", 1);
9076-
clopt = llvmopts.lookup("enable-unswitch-cost-multiplier");
9077-
if (clopt->getNumOccurrences() == 0)
9078-
cl::ProvidePositionalOption(clopt, "false", 1);
90799076
#endif
90809077
// if the patch adding this option has been applied, lower its limit to provide
90819078
// better DAGCombiner performance.
90829079
clopt = llvmopts.lookup("combiner-store-merge-dependence-limit");
90839080
if (clopt && clopt->getNumOccurrences() == 0)
90849081
cl::ProvidePositionalOption(clopt, "4", 1);
90859082

9083+
#if JL_LLVM_VERSION >= 150000
9084+
clopt = llvmopts.lookup("opaque-pointers");
9085+
if (clopt && clopt->getNumOccurrences() == 0) {
9086+
#ifdef JL_LLVM_OPAQUE_POINTERS
9087+
cl::ProvidePositionalOption(clopt, "true", 1);
9088+
#else
9089+
cl::ProvidePositionalOption(clopt, "false", 1);
9090+
#endif
9091+
}
9092+
#endif
9093+
90869094
jl_ExecutionEngine = new JuliaOJIT();
90879095

90889096
bool jl_using_gdb_jitevents = false;
@@ -9158,7 +9166,9 @@ extern "C" JL_DLLEXPORT_CODEGEN void jl_init_codegen_impl(void)
91589166
extern "C" JL_DLLEXPORT_CODEGEN void jl_teardown_codegen_impl() JL_NOTSAFEPOINT
91599167
{
91609168
// output LLVM timings and statistics
9161-
jl_ExecutionEngine->printTimers();
9169+
// Guard against exits before we have initialized the ExecutionEngine
9170+
if (jl_ExecutionEngine)
9171+
jl_ExecutionEngine->printTimers();
91629172
PrintStatistics();
91639173
}
91649174

src/jitlayers.cpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1309,9 +1309,6 @@ JuliaOJIT::JuliaOJIT()
13091309
JD(ES.createBareJITDylib("JuliaOJIT")),
13101310
ContextPool([](){
13111311
auto ctx = std::make_unique<LLVMContext>();
1312-
#ifdef JL_LLVM_OPAQUE_POINTERS
1313-
ctx->setOpaquePointers(true);
1314-
#endif
13151312
return orc::ThreadSafeContext(std::move(ctx));
13161313
}),
13171314
#ifdef JL_USE_JITLINK

0 commit comments

Comments
 (0)