https://github.com/arsenm created 
https://github.com/llvm/llvm-project/pull/209271

The DeviceActionBuilder virtual getConflictOffloadArchCombination() and
its CUDA/HIP overrides were never called. Offload-arch conflict detection
goes through the free getConflictOffloadArchCombination(DenseSet, Triple)
overload instead. Dead since a7d93653a671

>From bb89444433a26ff638d071d6ca09ade5c37eec8d Mon Sep 17 00:00:00 2001
From: Matt Arsenault <[email protected]>
Date: Mon, 13 Jul 2026 21:01:15 +0200
Subject: [PATCH] clang: Remove dead getConflictOffloadArchCombination virtual

The DeviceActionBuilder virtual getConflictOffloadArchCombination() and
its CUDA/HIP overrides were never called. Offload-arch conflict detection
goes through the free getConflictOffloadArchCombination(DenseSet, Triple)
overload instead. Dead since a7d93653a671
---
 clang/lib/Driver/Driver.cpp | 15 ---------------
 1 file changed, 15 deletions(-)

diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp
index 346c06aaeed00..e606cdc4c1cf8 100644
--- a/clang/lib/Driver/Driver.cpp
+++ b/clang/lib/Driver/Driver.cpp
@@ -3559,9 +3559,6 @@ class OffloadingActionBuilder final {
       CudaDeviceActions.clear();
     }
 
-    virtual std::optional<std::pair<llvm::StringRef, llvm::StringRef>>
-    getConflictOffloadArchCombination(const std::set<StringRef> &GpuArchs) = 0;
-
     bool initialize() override {
       assert(AssociatedOffloadKind == Action::OFK_Cuda ||
              AssociatedOffloadKind == Action::OFK_HIP);
@@ -3620,12 +3617,6 @@ class OffloadingActionBuilder final {
       DefaultOffloadArch = OffloadArch::CudaDefault;
     }
 
-    std::optional<std::pair<llvm::StringRef, llvm::StringRef>>
-    getConflictOffloadArchCombination(
-        const std::set<StringRef> &GpuArchs) override {
-      return std::nullopt;
-    }
-
     ActionBuilderReturnCode
     getDeviceDependences(OffloadAction::DeviceDependences &DA,
                          phases::ID CurPhase, phases::ID FinalPhase,
@@ -3779,12 +3770,6 @@ class OffloadingActionBuilder final {
 
     bool canUseBundlerUnbundler() const override { return true; }
 
-    std::optional<std::pair<llvm::StringRef, llvm::StringRef>>
-    getConflictOffloadArchCombination(
-        const std::set<StringRef> &GpuArchs) override {
-      return getConflictTargetIDCombination(GpuArchs);
-    }
-
     ActionBuilderReturnCode
     getDeviceDependences(OffloadAction::DeviceDependences &DA,
                          phases::ID CurPhase, phases::ID FinalPhase,

_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to