llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang-driver Author: Matt Arsenault (arsenm) <details> <summary>Changes</summary> Track the future effective triple for the job, rather than the toolchain's default triple. In the future this will change the result when amdgpu starts adjusting the triples to contain subarches. --- Full diff: https://github.com/llvm/llvm-project/pull/205065.diff 1 Files Affected: - (modified) clang/lib/Driver/ToolChains/Clang.cpp (+12-7) ``````````diff diff --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp index 75b98b89a6546..eda3081e55c8e 100644 --- a/clang/lib/Driver/ToolChains/Clang.cpp +++ b/clang/lib/Driver/ToolChains/Clang.cpp @@ -9388,9 +9388,11 @@ void OffloadBundler::ConstructJob(Compilation &C, const JobAction &JA, } Triples += Action::GetOffloadKindName(CurKind); Triples += '-'; - Triples += - CurTC->getTriple().normalize(llvm::Triple::CanonicalForm::FOUR_IDENT); - if (CurKind != Action::OFK_Host && + Triples += llvm::Triple(CurTC->ComputeEffectiveClangTriple( + TCArgs, CurDep->getOffloadingArch())) + .normalize(llvm::Triple::CanonicalForm::FOUR_IDENT); + + if ((CurKind != Action::OFK_Host) && !StringRef(CurDep->getOffloadingArch()).empty()) { Triples += '-'; Triples += CurDep->getOffloadingArch(); @@ -9466,9 +9468,12 @@ void OffloadBundler::ConstructJobMultipleOutputs( auto &Dep = DepInfo[I]; Triples += Action::GetOffloadKindName(Dep.DependentOffloadKind); Triples += '-'; - Triples += Dep.DependentToolChain->getTriple().normalize( - llvm::Triple::CanonicalForm::FOUR_IDENT); - if (Dep.DependentOffloadKind != Action::OFK_Host && + Triples += llvm::Triple(Dep.DependentToolChain->ComputeEffectiveClangTriple( + TCArgs, Dep.DependentBoundArch)) + .normalize(llvm::Triple::CanonicalForm::FOUR_IDENT); + + if ((Dep.DependentOffloadKind == Action::OFK_HIP || + Dep.DependentOffloadKind == Action::OFK_Cuda) && !Dep.DependentBoundArch.empty()) { Triples += '-'; Triples += Dep.DependentBoundArch; @@ -9537,7 +9542,7 @@ void OffloadPackager::ConstructJob(Compilation &C, const JobAction &JA, // linker wrapper. SmallVector<std::string> Parts{ "file=" + File.str(), - "triple=" + TC->getTripleString().str(), + "triple=" + TC->ComputeEffectiveClangTriple(TCArgs, Arch), "arch=" + (Arch.empty() ? "generic" : Arch.str()), "kind=" + Kind.str(), }; `````````` </details> https://github.com/llvm/llvm-project/pull/205065 _______________________________________________ llvm-branch-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits
