forked from OSchip/llvm-project
Cleanup r138662 per Ben and David's suggestions, thanks.
llvm-svn: 138670
This commit is contained in:
parent
b9d4e37776
commit
97c373793b
|
@ -377,7 +377,7 @@ public:
|
|||
/// as part of compilation; the file will have the given prefix and suffix.
|
||||
///
|
||||
/// GCC goes to extra lengths here to be a bit more robust.
|
||||
std::string GetTemporaryPath(const char *Prefix, const char *Suffix) const;
|
||||
std::string GetTemporaryPath(StringRef Prefix, const char *Suffix) const;
|
||||
|
||||
/// GetHostInfo - Construct a new host info object for the given
|
||||
/// host triple.
|
||||
|
|
|
@ -1335,15 +1335,6 @@ void Driver::BuildJobsForAction(Compilation &C,
|
|||
}
|
||||
}
|
||||
|
||||
// Strip the directory and suffix from BaseInput.
|
||||
static std::string getBaseName (const char *BaseInput) {
|
||||
std::pair<StringRef, StringRef> Split = StringRef(BaseInput).rsplit('/');
|
||||
if (Split.second != "")
|
||||
return Split.second.split('.').first.str();
|
||||
else
|
||||
return Split.first.split('.').first.str();
|
||||
}
|
||||
|
||||
const char *Driver::GetNamedOutputPath(Compilation &C,
|
||||
const JobAction &JA,
|
||||
const char *BaseInput,
|
||||
|
@ -1363,9 +1354,10 @@ const char *Driver::GetNamedOutputPath(Compilation &C,
|
|||
// Output to a temporary file?
|
||||
if ((!AtTopLevel && !C.getArgs().hasArg(options::OPT_save_temps)) ||
|
||||
CCGenDiagnostics) {
|
||||
StringRef Name = llvm::sys::path::filename(BaseInput);
|
||||
std::pair<StringRef, StringRef> Split = Name.split('.');
|
||||
std::string TmpName =
|
||||
GetTemporaryPath(getBaseName(BaseInput).c_str(),
|
||||
types::getTypeTempSuffix(JA.getType()));
|
||||
GetTemporaryPath(Split.first, types::getTypeTempSuffix(JA.getType()));
|
||||
return C.addTempFile(C.getArgs().MakeArgString(TmpName.c_str()));
|
||||
}
|
||||
|
||||
|
@ -1399,9 +1391,10 @@ const char *Driver::GetNamedOutputPath(Compilation &C,
|
|||
// filename, then avoid overwriting input file.
|
||||
if (!AtTopLevel && C.getArgs().hasArg(options::OPT_save_temps) &&
|
||||
NamedOutput == BaseName) {
|
||||
StringRef Name = llvm::sys::path::filename(BaseInput);
|
||||
std::pair<StringRef, StringRef> Split = Name.split('.');
|
||||
std::string TmpName =
|
||||
GetTemporaryPath(getBaseName(BaseInput).c_str(),
|
||||
types::getTypeTempSuffix(JA.getType()));
|
||||
GetTemporaryPath(Split.first, types::getTypeTempSuffix(JA.getType()));
|
||||
return C.addTempFile(C.getArgs().MakeArgString(TmpName.c_str()));
|
||||
}
|
||||
|
||||
|
@ -1486,7 +1479,7 @@ std::string Driver::GetProgramPath(const char *Name, const ToolChain &TC,
|
|||
return Name;
|
||||
}
|
||||
|
||||
std::string Driver::GetTemporaryPath(const char *Prefix, const char *Suffix)
|
||||
std::string Driver::GetTemporaryPath(StringRef Prefix, const char *Suffix)
|
||||
const {
|
||||
// FIXME: This is lame; sys::Path should provide this function (in particular,
|
||||
// it should know how to find the temporary files dir).
|
||||
|
|
Loading…
Reference in New Issue