Skip to content

Commit 09c693c

Browse files
committed
upgraded to llvm 21
1 parent ee856c1 commit 09c693c

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+865
-735
lines changed

build.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ def build_llvm(
111111
"-DCMAKE_INSTALL_PREFIX={}".format(install_dir),
112112
"-DLLVM_ENABLE_PROJECTS=clang;clang-tools-extra;mlir;compiler-rt;lld;",
113113
"-DLLVM_USE_LINKER=lld" if use_lld else "",
114+
"-DLLVM_USE_STATIC_ZSTD=ON",
114115
"-DCMAKE_EXPORT_COMPILE_COMMANDS=True",
115116
f"-DCMAKE_C_COMPILER={clang}",
116117
f"-DCMAKE_CXX_COMPILER={clang_plus_plus}",
@@ -237,7 +238,7 @@ def main():
237238
"--depth",
238239
"1",
239240
"-b",
240-
"release/20.x",
241+
"release/21.x",
241242
)
242243

243244
if debug_llvm and not exists(llvm_install_debug_dir) and args.llvm_dir == "":

lib/backend/include/rlc/backend/BackEnd.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ limitations under the License.
1818
#include <memory>
1919
#include <string>
2020

21+
#include "llvm/TargetParser/Triple.h"
22+
2123
namespace llvm
2224
{
2325
class DataLayout;
@@ -37,6 +39,7 @@ namespace mlir::rlc
3739
bool isMacOS() const;
3840
bool isWindows() const;
3941
std::string tripleToString() const;
42+
llvm::Triple triple() const;
4043
const llvm::DataLayout& getDataLayout() const;
4144

4245
TargetInfo(TargetInfo&& other): pimpl(other.pimpl)

lib/backend/src/BackEnd.cpp

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,8 @@ bool mlir::rlc::TargetInfo::isWindows() const
261261
return pimpl->triple.isOSWindows();
262262
}
263263

264+
llvm::Triple mlir::rlc::TargetInfo::triple() const { return pimpl->triple; }
265+
264266
std::string mlir::rlc::TargetInfo::tripleToString() const
265267
{
266268
return pimpl->triple.getTriple();
@@ -326,7 +328,7 @@ static mlir::LogicalResult getLinkerInvocation(
326328
llvm::IntrusiveRefCntPtr<llvm::vfs::OverlayFileSystem> VFS =
327329
new llvm::vfs::OverlayFileSystem(llvm::vfs::getRealFileSystem());
328330
llvm::IntrusiveRefCntPtr diagIds(new clang::DiagnosticIDs());
329-
llvm::IntrusiveRefCntPtr opts(new clang::DiagnosticOptions());
331+
auto opts = clang::DiagnosticOptions();
330332
clang::DiagnosticsEngine engine(diagIds, opts);
331333
engine.setClient(new clang::DiagnosticConsumer(), true);
332334
clang::driver::Driver driver(
@@ -335,7 +337,7 @@ static mlir::LogicalResult getLinkerInvocation(
335337
auto binDir = llvm::sys::path::parent_path(clangPath);
336338
auto installDir = llvm::sys::path::parent_path(binDir);
337339
llvm::SmallVector<char, 4> clangResourceDir;
338-
llvm::sys::path::append(clangResourceDir, installDir, "lib", "clang", "20");
340+
llvm::sys::path::append(clangResourceDir, installDir, "lib", "clang", "21");
339341
driver.ResourceDir =
340342
llvm::StringRef(clangResourceDir.data(), clangResourceDir.size());
341343
if (targetMac and not llvm::sys::Process::GetEnv("SDKROOT"))
@@ -552,7 +554,7 @@ namespace mlir::rlc
552554
auto Module = mlir::translateModuleToLLVMIR(
553555
getOperation(), LLVMcontext, getOperation().getName().value());
554556
assert(Module);
555-
Module->setTargetTriple(targetInfo->tripleToString());
557+
Module->setTargetTriple(targetInfo->triple());
556558

557559
runOptimizer(
558560
*Module,

0 commit comments

Comments
 (0)