mirror of
https://github.com/llvm/llvm-project.git
synced 2025-05-02 18:16:05 +00:00
[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.
This commit is contained in:
parent
517334bdb8
commit
ac94fade60
@ -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);
|
||||
|
@ -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!");
|
||||
|
Loading…
x
Reference in New Issue
Block a user