2
0

[HIPIFY] Introduce CUDA installation path option '-cuda-path'

Repeats clang's '--cuda-path' option.

[Reason]
In case of absence of any other clang's options setting '-cuda-path' allows not to specify separator '--' before clang's '--cuda-path'.

+ Tests and scripts are updated accordingly.
Este cometimento está contido em:
Evgeny Mankov
2019-01-09 20:18:36 +03:00
ascendente 0e750d727f
cometimento fbfe005e4e
45 ficheiros modificados com 64 adições e 51 eliminações
+5
Ver ficheiro
@@ -39,6 +39,11 @@ cl::opt<std::string> TemporaryDir("temp-dir",
cl::value_desc("directory"),
cl::cat(ToolTemplateCategory));
cl::opt<std::string> CudaPath("cuda-path",
cl::desc("CUDA installation path"),
cl::value_desc("directory"),
cl::cat(ToolTemplateCategory));
cl::opt <bool> SaveTemps("save-temps",
cl::desc("Save temporary files"),
cl::value_desc("save-temps"),
+1
Ver ficheiro
@@ -32,6 +32,7 @@ extern cl::OptionCategory ToolTemplateCategory;
extern cl::opt<std::string> OutputFilename;
extern cl::opt<std::string> OutputDir;
extern cl::opt<std::string> TemporaryDir;
extern cl::opt<std::string> CudaPath;
extern cl::opt<bool> Inplace;
extern cl::opt<bool> SaveTemps;
extern cl::opt<bool> NoBackup;
+4
Ver ficheiro
@@ -174,6 +174,10 @@ int main(int argc, const char **argv) {
Tool.appendArgumentsAdjuster(ct::getInsertArgumentAdjuster("cuda", ct::ArgumentInsertPosition::BEGIN));
Tool.appendArgumentsAdjuster(ct::getInsertArgumentAdjuster("-x", ct::ArgumentInsertPosition::BEGIN));
Tool.appendArgumentsAdjuster(ct::getInsertArgumentAdjuster("--cuda-host-only", ct::ArgumentInsertPosition::BEGIN));
if (!CudaPath.empty()) {
std::string sCudaPath = "--cuda-path=" + CudaPath;
Tool.appendArgumentsAdjuster(ct::getInsertArgumentAdjuster(sCudaPath.c_str(), ct::ArgumentInsertPosition::BEGIN));
}
// Includes for clang's CUDA wrappers for using by packaged hipify-clang
Tool.appendArgumentsAdjuster(ct::getInsertArgumentAdjuster("./include", ct::ArgumentInsertPosition::BEGIN));
Tool.appendArgumentsAdjuster(ct::getInsertArgumentAdjuster("-isystem", ct::ArgumentInsertPosition::BEGIN));