From d38dcf0d28831c8f2d8d0a1495c80b24cde37904 Mon Sep 17 00:00:00 2001 From: Martijn Courteaux Date: Fri, 10 Oct 2025 23:34:37 +0200 Subject: [PATCH 1/5] Hotfix LLVM deprecation warning. --- src/CodeGen_PTX_Dev.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/CodeGen_PTX_Dev.cpp b/src/CodeGen_PTX_Dev.cpp index cdc4411e494d..14f9b009fa44 100644 --- a/src/CodeGen_PTX_Dev.cpp +++ b/src/CodeGen_PTX_Dev.cpp @@ -609,7 +609,7 @@ vector CodeGen_PTX_Dev::compile_to_src() { // Allocate target machine std::string err_str; - const llvm::Target *llvm_target = TargetRegistry::lookupTarget(triple.str(), err_str); + const llvm::Target *llvm_target = TargetRegistry::lookupTarget(triple, err_str); internal_assert(llvm_target) << err_str << "\n"; TargetOptions options; From 4949046f829bf336f442de732420ef8ee9a01e78 Mon Sep 17 00:00:00 2001 From: Martijn Courteaux Date: Sat, 11 Oct 2025 10:48:31 +0200 Subject: [PATCH 2/5] Mimick code of CodeGen_Internal in CodeGen_PTX for making target machine --- src/CodeGen_PTX_Dev.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/CodeGen_PTX_Dev.cpp b/src/CodeGen_PTX_Dev.cpp index 14f9b009fa44..3afb804bc699 100644 --- a/src/CodeGen_PTX_Dev.cpp +++ b/src/CodeGen_PTX_Dev.cpp @@ -606,11 +606,14 @@ vector CodeGen_PTX_Dev::compile_to_src() { llvm::Triple triple(module->getTargetTriple()); - // Allocate target machine - + // Allocate target machine (similar to code in CodeGen_Internal.cpp make_target_machine) std::string err_str; - const llvm::Target *llvm_target = TargetRegistry::lookupTarget(triple, err_str); + auto triple = llvm::Triple(module.getTargetTriple()); + const llvm::Target *llvm_target = TargetRegistry::lookupTarget( + module.getTargetTriple(), + err_str); internal_assert(llvm_target) << err_str << "\n"; + internal_assert(llvm_target) << "Could not create LLVM target for " << triple.str() << "\n"; TargetOptions options; options.AllowFPOpFusion = FPOpFusion::Fast; From c4844649d86034b11c7bbeeb620bcba64018037b Mon Sep 17 00:00:00 2001 From: Martijn Courteaux Date: Sat, 11 Oct 2025 11:10:26 +0200 Subject: [PATCH 3/5] Mama mia. --- src/CodeGen_PTX_Dev.cpp | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/src/CodeGen_PTX_Dev.cpp b/src/CodeGen_PTX_Dev.cpp index 3afb804bc699..2e913178d8e4 100644 --- a/src/CodeGen_PTX_Dev.cpp +++ b/src/CodeGen_PTX_Dev.cpp @@ -604,15 +604,12 @@ vector CodeGen_PTX_Dev::compile_to_src() { /*int argc = sizeof(argv)/sizeof(char*);*/ /*cl::ParseCommandLineOptions(argc, argv, "Halide PTX internal compiler\n");*/ - llvm::Triple triple(module->getTargetTriple()); - // Allocate target machine (similar to code in CodeGen_Internal.cpp make_target_machine) std::string err_str; - auto triple = llvm::Triple(module.getTargetTriple()); + auto triple = llvm::Triple(module->getTargetTriple()); const llvm::Target *llvm_target = TargetRegistry::lookupTarget( - module.getTargetTriple(), + triple, err_str); - internal_assert(llvm_target) << err_str << "\n"; internal_assert(llvm_target) << "Could not create LLVM target for " << triple.str() << "\n"; TargetOptions options; From e728a962f48bbc957a3d69e0863a854f92ff1558 Mon Sep 17 00:00:00 2001 From: Martijn Courteaux Date: Sat, 11 Oct 2025 11:30:55 +0200 Subject: [PATCH 4/5] Clang-format --- src/CodeGen_PTX_Dev.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/CodeGen_PTX_Dev.cpp b/src/CodeGen_PTX_Dev.cpp index 2e913178d8e4..2b6ffcb2d71e 100644 --- a/src/CodeGen_PTX_Dev.cpp +++ b/src/CodeGen_PTX_Dev.cpp @@ -608,8 +608,8 @@ vector CodeGen_PTX_Dev::compile_to_src() { std::string err_str; auto triple = llvm::Triple(module->getTargetTriple()); const llvm::Target *llvm_target = TargetRegistry::lookupTarget( - triple, - err_str); + triple, + err_str); internal_assert(llvm_target) << "Could not create LLVM target for " << triple.str() << "\n"; TargetOptions options; From 036bf089c6b8a034a930cdbfe364d24662f2759a Mon Sep 17 00:00:00 2001 From: Martijn Courteaux Date: Mon, 13 Oct 2025 20:02:47 +0200 Subject: [PATCH 5/5] Coding is hard. --- src/CodeGen_PTX_Dev.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/CodeGen_PTX_Dev.cpp b/src/CodeGen_PTX_Dev.cpp index 2b6ffcb2d71e..dae26c5d6681 100644 --- a/src/CodeGen_PTX_Dev.cpp +++ b/src/CodeGen_PTX_Dev.cpp @@ -606,10 +606,10 @@ vector CodeGen_PTX_Dev::compile_to_src() { // Allocate target machine (similar to code in CodeGen_Internal.cpp make_target_machine) std::string err_str; - auto triple = llvm::Triple(module->getTargetTriple()); const llvm::Target *llvm_target = TargetRegistry::lookupTarget( - triple, + module->getTargetTriple(), err_str); + auto triple = llvm::Triple(module->getTargetTriple()); internal_assert(llvm_target) << "Could not create LLVM target for " << triple.str() << "\n"; TargetOptions options;