[llvm] ac94fad - [SPIR-V] Rename internal command line flags for optimization level and mtriple used when passing options into the translate API call (#123975)

via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 22 14:16:53 PST 2025


Author: Vyacheslav Levytskyy
Date: 2025-01-22T23:16:49+01:00
New Revision: ac94fade6075fec89eb29c7dedf01ef59601e61d

URL: https://github.com/llvm/llvm-project/commit/ac94fade6075fec89eb29c7dedf01ef59601e61d
DIFF: https://github.com/llvm/llvm-project/commit/ac94fade6075fec89eb29c7dedf01ef59601e61d.diff

LOG: [SPIR-V] Rename internal command line flags for optimization level and mtriple used when passing options into the translate API call (#123975)

Rename internal command line flags for optimization level and mtriple
used when passing options into the translate API call.

Added: 
    

Modified: 
    llvm/lib/Target/SPIRV/SPIRVAPI.cpp
    llvm/unittests/Target/SPIRV/SPIRVAPITest.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/SPIRV/SPIRVAPI.cpp b/llvm/lib/Target/SPIRV/SPIRVAPI.cpp
index 4c806fd7c98882..95c9b0e5200608 100644
--- a/llvm/lib/Target/SPIRV/SPIRVAPI.cpp
+++ b/llvm/lib/Target/SPIRV/SPIRVAPI.cpp
@@ -42,9 +42,10 @@ namespace {
 
 // Mimic limited number of command line flags from llc to provide a better
 // user experience when passing options into the translate API call.
-static cl::opt<char> SpvOptLevel(" O", cl::Hidden, cl::Prefix, cl::init('0'));
-static cl::opt<std::string> SpvTargetTriple(" mtriple", cl::Hidden,
-                                            cl::init(""));
+static cl::opt<char> SpirvOptLevel("spirv-O", cl::Hidden, cl::Prefix,
+                                   cl::init('0'));
+static cl::opt<std::string> SpirvTargetTriple("spirv-mtriple", cl::Hidden,
+                                              cl::init(""));
 
 // Utility to accept options in a command line style.
 void parseSPIRVCommandLineOptions(const std::vector<std::string> &Options,
@@ -94,7 +95,7 @@ SPIRVTranslateModule(Module *M, std::string &SpirvObj, std::string &ErrMsg,
   }
 
   llvm::CodeGenOptLevel OLevel;
-  if (auto Level = CodeGenOpt::parseLevel(SpvOptLevel)) {
+  if (auto Level = CodeGenOpt::parseLevel(SpirvOptLevel)) {
     OLevel = *Level;
   } else {
     ErrMsg = "Invalid optimization level!";
@@ -115,9 +116,9 @@ SPIRVTranslateModule(Module *M, std::string &SpirvObj, std::string &ErrMsg,
   // SPIR-V-specific target initialization.
   InitializeSPIRVTarget();
 
-  Triple TargetTriple(SpvTargetTriple.empty()
+  Triple TargetTriple(SpirvTargetTriple.empty()
                           ? M->getTargetTriple()
-                          : Triple::normalize(SpvTargetTriple));
+                          : Triple::normalize(SpirvTargetTriple));
   if (TargetTriple.getTriple().empty()) {
     TargetTriple.setTriple(DefaultTriple);
     M->setTargetTriple(DefaultTriple);

diff  --git a/llvm/unittests/Target/SPIRV/SPIRVAPITest.cpp b/llvm/unittests/Target/SPIRV/SPIRVAPITest.cpp
index 149db48c190a09..f0b4a2f55c1519 100644
--- a/llvm/unittests/Target/SPIRV/SPIRVAPITest.cpp
+++ b/llvm/unittests/Target/SPIRV/SPIRVAPITest.cpp
@@ -80,7 +80,7 @@ TEST_F(SPIRVAPITest, checkTranslateOk) {
   // Those command line arguments that overlap with registered by llc/codegen
   // are to be started with the ' ' symbol.
   std::vector<std::string> SetOfOpts[] = {
-      {}, {"- mtriple=spirv32-unknown-unknown"}};
+      {}, {"--spirv-mtriple=spirv32-unknown-unknown"}};
   for (const auto &Opts : SetOfOpts) {
     for (StringRef &Assembly : Assemblies) {
       std::string Result, Error;
@@ -100,7 +100,7 @@ TEST_F(SPIRVAPITest, checkTranslateError) {
   EXPECT_THAT(Error,
               StartsWith("SPIRVTranslateModule: Unknown command line argument "
                          "'-mtriple=spirv32-unknown-unknown'"));
-  Status = toSpirv(OkAssembly, Result, Error, {}, {"- O 5"});
+  Status = toSpirv(OkAssembly, Result, Error, {}, {"--spirv-O 5"});
   EXPECT_FALSE(Status);
   EXPECT_TRUE(Result.empty());
   EXPECT_EQ(Error, "Invalid optimization level!");


        


More information about the llvm-commits mailing list