lli: LLIObjectCache: Use llvm::sys::path to get dirname.

llvm-svn: 198928
This commit is contained in:
NAKAMURA Takumi 2014-01-10 10:38:34 +00:00
parent f462f9c7e0
commit 390e060916
1 changed files with 5 additions and 2 deletions

View File

@ -268,8 +268,11 @@ public:
if (!getCacheFilename(ModuleID, CacheName))
return;
std::string errStr;
if (!CacheDir.empty()) // Create user-defined cache dir.
sys::fs::create_directories(CacheName.substr(0, CacheName.rfind('/')));
if (!CacheDir.empty()) { // Create user-defined cache dir.
SmallString<128> dir(CacheName);
sys::path::remove_filename(dir);
sys::fs::create_directories(Twine(dir));
}
raw_fd_ostream outfile(CacheName.c_str(), errStr, sys::fs::F_Binary);
outfile.write(Obj->getBufferStart(), Obj->getBufferSize());
outfile.close();