[llvm-branch-commits] [clang] [OffloadBundler] Rework the ctor of `OffloadTargetInfo` to support generic target (PR #122629)
Shilei Tian via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Sat Jan 11 20:25:13 PST 2025
================
@@ -84,31 +84,19 @@ OffloadTargetInfo::OffloadTargetInfo(const StringRef Target,
: BundlerConfig(BC) {
// TODO: Add error checking from ClangOffloadBundler.cpp
- auto TargetFeatures = Target.split(':');
- auto TripleOrGPU = TargetFeatures.first.rsplit('-');
-
- if (clang::StringToOffloadArch(TripleOrGPU.second) !=
- clang::OffloadArch::UNKNOWN) {
- auto KindTriple = TripleOrGPU.first.split('-');
- this->OffloadKind = KindTriple.first;
-
- // Enforce optional env field to standardize bundles
- llvm::Triple t = llvm::Triple(KindTriple.second);
- this->Triple = llvm::Triple(t.getArchName(), t.getVendorName(),
- t.getOSName(), t.getEnvironmentName());
-
- this->TargetID = Target.substr(Target.find(TripleOrGPU.second));
- } else {
- auto KindTriple = TargetFeatures.first.split('-');
- this->OffloadKind = KindTriple.first;
-
- // Enforce optional env field to standardize bundles
- llvm::Triple t = llvm::Triple(KindTriple.second);
- this->Triple = llvm::Triple(t.getArchName(), t.getVendorName(),
- t.getOSName(), t.getEnvironmentName());
-
- this->TargetID = "";
- }
+ // <kind>-<triple>[-<target id>]
+ // <tiple> := <arch>-<vendor>-<os>-<env>
----------------
shiltian wrote:
found a typo: triple
https://github.com/llvm/llvm-project/pull/122629
More information about the llvm-branch-commits
mailing list