summaryrefslogtreecommitdiffstats
path: root/dynamic-layers/openembedded-layer/recipes-devtools/bpftrace/bpftrace/0003-ast-Adjust-to-enum-changes-in-llvm-18.patch
blob: 35f442fedb8f57748c0c68830577598531681dc9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
From 71618b5eae717c491e11b770dff14ba79306f0c8 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 16 Feb 2024 10:40:21 -0800
Subject: [PATCH 3/4] ast: Adjust to enum changes in llvm 18

llvm 18 has change CodeGenOpt::Level/CodeGenFileType into enum classes via
https://github.com/llvm/llvm-project/commit/0a1aa6cda2758b0926a95f87d39ffefb1cb90200

Upstream-Status: Submitted [https://github.com/bpftrace/bpftrace/pull/3009]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 src/ast/passes/codegen_llvm.cpp | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/ast/passes/codegen_llvm.cpp b/src/ast/passes/codegen_llvm.cpp
index 258b0b0b..ceab4bc4 100644
--- a/src/ast/passes/codegen_llvm.cpp
+++ b/src/ast/passes/codegen_llvm.cpp
@@ -73,7 +73,7 @@ CodegenLLVM::CodegenLLVM(Node *root, BPFtrace &bpftrace)
                                   Optional<Reloc::Model>()
 #endif
                                       ));
-  target_machine_->setOptLevel(llvm::CodeGenOpt::Aggressive);
+  target_machine_->setOptLevel(llvm::CodeGenOptLevel::Aggressive);
 
   module_->setTargetTriple(LLVMTargetTriple);
   module_->setDataLayout(target_machine_->createDataLayout());
@@ -3530,7 +3530,9 @@ void CodegenLLVM::emit(raw_pwrite_stream &stream)
 {
   legacy::PassManager PM;
 
-#if LLVM_VERSION_MAJOR >= 10
+#if LLVM_VERSION_MAJOR >= 18
+  auto type = CodeGenFileType::ObjectFile;
+#elif LLVM_VERSION_MAJOR >= 10
   auto type = llvm::CGFT_ObjectFile;
 #else
   auto type = llvm::TargetMachine::CGFT_ObjectFile;
-- 
2.43.2