https://github.com/arsenm created https://github.com/llvm/llvm-project/pull/209256
This will route to getArchNameR600 which should already handle all the aliases. >From 481f84a2c13602a4624cc21b54185a80ebc897c6 Mon Sep 17 00:00:00 2001 From: Matt Arsenault <[email protected]> Date: Mon, 13 Jul 2026 19:51:28 +0200 Subject: [PATCH] clang/AMDGPU: Remove StringSwitch over r600 aliases This will route to getArchNameR600 which should already handle all the aliases. --- clang/lib/Driver/ToolChains/CommonArgs.cpp | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/clang/lib/Driver/ToolChains/CommonArgs.cpp b/clang/lib/Driver/ToolChains/CommonArgs.cpp index 2bfa1fbb1c678..08c06951cf220 100644 --- a/clang/lib/Driver/ToolChains/CommonArgs.cpp +++ b/clang/lib/Driver/ToolChains/CommonArgs.cpp @@ -697,19 +697,10 @@ void tools::AddTargetFeature(const ArgList &Args, } /// Get the (LLVM) name of the AMDGPU gpu we are targeting. -static std::string getAMDGPUTargetGPU(const llvm::Triple &T, - const ArgList &Args) { +static StringRef getAMDGPUTargetGPU(const llvm::Triple &T, + const ArgList &Args) { if (Arg *A = Args.getLastArg(options::OPT_mcpu_EQ)) { - auto GPUName = getProcessorFromTargetID(T, A->getValue()); - return llvm::StringSwitch<std::string>(GPUName) - .Cases({"rv630", "rv635"}, "r600") - .Cases({"rv610", "rv620", "rs780"}, "rs880") - .Case("rv740", "rv770") - .Case("palm", "cedar") - .Cases({"sumo", "sumo2"}, "sumo") - .Case("hemlock", "cypress") - .Case("aruba", "cayman") - .Default(GPUName.str()); + return getProcessorFromTargetID(T, A->getValue()); } return ""; } @@ -835,7 +826,7 @@ std::string tools::getCPUName(const Driver &D, const ArgList &Args, case llvm::Triple::amdgpu: case llvm::Triple::r600: - return getAMDGPUTargetGPU(T, Args); + return getAMDGPUTargetGPU(T, Args).str(); case llvm::Triple::wasm32: case llvm::Triple::wasm64: _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
