Skip to content

Commit c3ecf6f

Browse files
committed
Update CodeGenOpt to CodeGenOptLevel
See llvm/llvm-project#66295
1 parent 7364183 commit c3ecf6f

File tree

3 files changed

+23
-0
lines changed

3 files changed

+23
-0
lines changed

src/aotcompile.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1636,7 +1636,11 @@ void jl_dump_native_impl(void *native_code,
16361636
jl_ExecutionEngine->getTargetOptions(),
16371637
RelocModel,
16381638
CMModel,
1639+
#if JL_LLVM_VERSION >= 180000
1640+
CodeGenOptLevel::Aggressive // -O3 TODO: respect command -O0 flag?
1641+
#else
16391642
CodeGenOpt::Aggressive // -O3 TODO: respect command -O0 flag?
1643+
#endif
16401644
));
16411645
fixupTM(*SourceTM);
16421646
auto DL = jl_create_datalayout(*SourceTM);

src/jitlayers.cpp

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -570,6 +570,19 @@ jl_value_t *jl_dump_method_asm_impl(jl_method_instance_t *mi, size_t world,
570570
return jl_an_empty_string;
571571
}
572572

573+
#if JL_LLVM_VERSION >= 180000
574+
CodeGenOptLevel CodeGenOptLevelFor(int optlevel)
575+
{
576+
#ifdef DISABLE_OPT
577+
return CodeGenOptLevel::None;
578+
#else
579+
return optlevel == 0 ? CodeGenOptLevel::None :
580+
optlevel == 1 ? CodeGenOptLevel::Less :
581+
optlevel == 2 ? CodeGenOptLevel::Default :
582+
CodeGenOptLevel::Aggressive;
583+
#endif
584+
}
585+
#else
573586
CodeGenOpt::Level CodeGenOptLevelFor(int optlevel)
574587
{
575588
#ifdef DISABLE_OPT
@@ -581,6 +594,7 @@ CodeGenOpt::Level CodeGenOptLevelFor(int optlevel)
581594
CodeGenOpt::Aggressive;
582595
#endif
583596
}
597+
#endif
584598

585599
static auto countBasicBlocks(const Function &F) JL_NOTSAFEPOINT
586600
{

src/jitlayers.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
#include "julia_internal.h"
2727
#include "platform.h"
2828
#include "llvm-codegen-shared.h"
29+
#include "llvm-version.h"
2930
#include <stack>
3031
#include <queue>
3132

@@ -640,4 +641,8 @@ void optimizeDLSyms(Module &M);
640641
// NewPM
641642
#include "passes.h"
642643

644+
#if JL_LLVM_VERSION >= 180000
645+
CodeGenOptLevel CodeGenOptLevelFor(int optlevel) JL_NOTSAFEPOINT;
646+
#else
643647
CodeGenOpt::Level CodeGenOptLevelFor(int optlevel) JL_NOTSAFEPOINT;
648+
#endif

0 commit comments

Comments
 (0)