diff --git a/projects/clr/hipamd/hipify-clang/src/Cuda2Hip.cpp b/projects/clr/hipamd/hipify-clang/src/Cuda2Hip.cpp index 270dec68b3..dabcfe05ed 100644 --- a/projects/clr/hipamd/hipify-clang/src/Cuda2Hip.cpp +++ b/projects/clr/hipamd/hipify-clang/src/Cuda2Hip.cpp @@ -55,6 +55,7 @@ THE SOFTWARE. #include "CUDA2HipMap.h" #include "Types.h" #include "LLVMCompat.h" +#include "StringUtils.h" using namespace clang; using namespace clang::ast_matchers; @@ -121,23 +122,6 @@ uint64_t countApiRepsTotalUnsupported[API_LAST] = { 0 }; std::map cuda2hipConvertedTotal; std::map cuda2hipUnconvertedTotal; -StringRef unquoteStr(StringRef s) { - if (s.size() > 1 && s.front() == '"' && s.back() == '"') - return s.substr(1, s.size() - 2); - return s; -} - -/** - * If `s` starts with `prefix`, remove it. Otherwise, does nothing. - */ -void removePrefixIfPresent(std::string& s, std::string prefix) { - if (s.find(prefix) != 0) { - return; - } - - s.erase(0, prefix.size()); -} - class Cuda2Hip { public: Cuda2Hip(Replacements& R, const std::string &srcFileName) : diff --git a/projects/clr/hipamd/hipify-clang/src/StringUtils.cpp b/projects/clr/hipamd/hipify-clang/src/StringUtils.cpp new file mode 100644 index 0000000000..ad55333bc8 --- /dev/null +++ b/projects/clr/hipamd/hipify-clang/src/StringUtils.cpp @@ -0,0 +1,17 @@ +#include "StringUtils.h" + +llvm::StringRef unquoteStr(llvm::StringRef s) { + if (s.size() > 1 && s.front() == '"' && s.back() == '"') { + return s.substr(1, s.size() - 2); + } + + return s; +} + +void removePrefixIfPresent(std::string &s, std::string prefix) { + if (s.find(prefix) != 0) { + return; + } + + s.erase(0, prefix.size()); +} diff --git a/projects/clr/hipamd/hipify-clang/src/StringUtils.h b/projects/clr/hipamd/hipify-clang/src/StringUtils.h new file mode 100644 index 0000000000..66a9be780f --- /dev/null +++ b/projects/clr/hipamd/hipify-clang/src/StringUtils.h @@ -0,0 +1,14 @@ +#pragma once + +#include +#include "llvm/ADT/StringRef.h" + +/** + * Remove double-quotes from the start/end of a string, if present. + */ +llvm::StringRef unquoteStr(llvm::StringRef s); + +/** + * If `s` starts with `prefix`, remove it. Otherwise, does nothing. + */ +void removePrefixIfPresent(std::string &s, std::string prefix);