1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 02:33:06 +01:00

Revert r122143 through r122140, which collectively broke the LLVMC tests on

the buildbots.

llvm-svn: 122149
This commit is contained in:
Owen Anderson 2010-12-18 07:37:18 +00:00
parent df98fb74f6
commit 7103acd18e
7 changed files with 32 additions and 32 deletions

View File

@ -21,10 +21,8 @@
#include <string>
#include <vector>
#define LLVMV_PATH_DEPRECATED_MSG(replacement) \
"PathV1 has been deprecated and will be removed as soon as all LLVM and" \
" Clang clients have been moved over to PathV2. Please use `" #replacement \
"` from PathV2 instead."
#define LLVMV_PATH_DEPRECATED_MSG \
"PathV1 is being deprecated, please use the PathV2 API."
namespace llvm {
namespace sys {
@ -267,20 +265,18 @@ namespace sys {
/// @brief Returns the last component of the path name.
LLVM_ATTRIBUTE_DEPRECATED(
StringRef getLast() const,
LLVMV_PATH_DEPRECATED_MSG(path::filename));
LLVMV_PATH_DEPRECATED_MSG);
/// This function strips off the path and suffix of the file or directory
/// name and returns just the basename. For example /a/foo.bar would cause
/// this function to return "foo".
/// @returns StringRef containing the basename of the path
/// @brief Get the base name of the path
LLVM_ATTRIBUTE_DEPRECATED(StringRef getBasename() const,
LLVMV_PATH_DEPRECATED_MSG(path::stem));
StringRef getBasename() const;
/// This function strips off the suffix of the path beginning with the
/// path separator ('/' on Unix, '\' on Windows) and returns the result.
LLVM_ATTRIBUTE_DEPRECATED(StringRef getDirname() const,
LLVMV_PATH_DEPRECATED_MSG(path::parent_path));
StringRef getDirname() const;
/// This function strips off the path and basename(up to and
/// including the last dot) of the file or directory name and
@ -288,8 +284,7 @@ namespace sys {
/// this function to return "bar".
/// @returns StringRef containing the suffix of the path
/// @brief Get the suffix of the path
LLVM_ATTRIBUTE_DEPRECATED(StringRef getSuffix() const,
LLVMV_PATH_DEPRECATED_MSG(path::extension));
StringRef getSuffix() const;
/// Obtain a 'C' string for the path name.
/// @returns a 'C' string containing the path name.
@ -313,14 +308,14 @@ namespace sys {
/// @brief Determine if the path is absolute.
LLVM_ATTRIBUTE_DEPRECATED(
bool isAbsolute() const,
LLVMV_PATH_DEPRECATED_MSG(path::is_absolute));
LLVMV_PATH_DEPRECATED_MSG);
/// This function determines if the path name is absolute, as opposed to
/// relative.
/// @brief Determine if the path is absolute.
LLVM_ATTRIBUTE_DEPRECATED(
static bool isAbsolute(const char *NameStart, unsigned NameLen),
LLVMV_PATH_DEPRECATED_MSG(path::is_absolute));
LLVMV_PATH_DEPRECATED_MSG);
/// This function opens the file associated with the path name provided by
/// the Path object and reads its magic number. If the magic number at the

View File

@ -32,7 +32,7 @@ using namespace llvmc;
namespace llvmc {
const std::string* LanguageMap::GetLanguage(const sys::Path& File) const {
StringRef suf = sys::path::extension(File.str());
StringRef suf = File.getSuffix();
LanguageMap::const_iterator Lang =
this->find(suf.empty() ? "*empty*" : suf);
if (Lang == this->end()) {

View File

@ -43,7 +43,8 @@ namespace {
return 0;
}
else if (SaveTemps == SaveTempsEnum::Obj && !OutputFilename.empty()) {
tempDir = sys::path::parent_path(OutputFilename);
tempDir = OutputFilename;
tempDir = tempDir.getDirname();
}
else {
// SaveTemps == Cwd --> use current dir (leave tempDir empty).

View File

@ -61,7 +61,7 @@ sys::Path Tool::OutFilename(const sys::Path& In,
Out.appendSuffix(OutputSuffix);
}
else {
Out.set(sys::path::stem(In.str()));
Out.set(In.getBasename());
Out.appendSuffix(OutputSuffix);
}
}
@ -69,7 +69,7 @@ sys::Path Tool::OutFilename(const sys::Path& In,
if (IsJoin())
Out = MakeTempFile(TempDir, "tmp", OutputSuffix);
else
Out = MakeTempFile(TempDir, sys::path::stem(In.str()), OutputSuffix);
Out = MakeTempFile(TempDir, In.getBasename(), OutputSuffix);
}
return Out;
}

View File

@ -449,7 +449,7 @@ static void LinkNamedMDNodes(Module *Dest, Module *Src,
const NamedMDNode *SrcNMD = I;
NamedMDNode *DestNMD = Dest->getOrInsertNamedMetadata(SrcNMD->getName());
// Add Src elements into Dest node.
for (unsigned i = 0, e = SrcNMD->getNumOperands(); i != e; ++i)
for (unsigned i = 0, e = SrcNMD->getNumOperands(); i != e; ++i)
DestNMD->addOperand(cast<MDNode>(MapValue(SrcNMD->getOperand(i),
ValueMap,
true)));
@ -559,14 +559,14 @@ static bool LinkGlobals(Module *Dest, const Module *Src,
// we are replacing may be a function (if a prototype, weak, etc) or a
// global variable.
GlobalVariable *NewDGV =
new GlobalVariable(*Dest, SGV->getType()->getElementType(),
SGV->isConstant(), NewLinkage, /*init*/0,
new GlobalVariable(*Dest, SGV->getType()->getElementType(),
SGV->isConstant(), NewLinkage, /*init*/0,
DGV->getName(), 0, false,
SGV->getType()->getAddressSpace());
// Propagate alignment, section, and visibility info.
CopyGVAttributes(NewDGV, SGV);
DGV->replaceAllUsesWith(ConstantExpr::getBitCast(NewDGV,
DGV->replaceAllUsesWith(ConstantExpr::getBitCast(NewDGV,
DGV->getType()));
// DGV will conflict with NewDGV because they both had the same
@ -928,7 +928,7 @@ static bool LinkFunctionProtos(Module *Dest, const Module *Src,
CopyGVAttributes(NewDF, SF);
// Any uses of DF need to change to NewDF, with cast
DGV->replaceAllUsesWith(ConstantExpr::getBitCast(NewDF,
DGV->replaceAllUsesWith(ConstantExpr::getBitCast(NewDF,
DGV->getType()));
// DF will conflict with NewDF because they both had the same. We must
@ -1017,7 +1017,7 @@ static bool LinkFunctionBody(Function *Dest, Function *Src,
Value *Old = MI->second;
if (!isa<Instruction>(Old) && !isa<BasicBlock>(Old)) {
Value *New = MapValue(Old, ValueMap, true);
if (New != Old)
if (New != Old)
I->setMetadata(MI->first, cast<MDNode>(New));
}
}
@ -1100,7 +1100,7 @@ static bool LinkAppendingVars(Module *M,
"Appending variables with different section name need to be linked!");
unsigned NewSize = T1->getNumElements() + T2->getNumElements();
ArrayType *NewType = ArrayType::get(T1->getElementType(),
ArrayType *NewType = ArrayType::get(T1->getElementType(),
NewSize);
G1->setName(""); // Clear G1's name in case of a conflict!
@ -1144,7 +1144,7 @@ static bool LinkAppendingVars(Module *M,
// getelementptr instructions to not use the Cast!
G1->replaceAllUsesWith(ConstantExpr::getBitCast(NG,
G1->getType()));
G2->replaceAllUsesWith(ConstantExpr::getBitCast(NG,
G2->replaceAllUsesWith(ConstantExpr::getBitCast(NG,
G2->getType()));
// Remove the two globals from the module now...
@ -1301,9 +1301,10 @@ Linker::LinkModules(Module *Dest, Module *Src, std::string *ErrorMsg) {
// If the source library's module id is in the dependent library list of the
// destination library, remove it since that module is now linked in.
const std::string &modId = Src->getModuleIdentifier();
if (!modId.empty())
Dest->removeLibrary(sys::path::stem(modId));
sys::Path modId;
modId.set(Src->getModuleIdentifier());
if (!modId.isEmpty())
Dest->removeLibrary(modId.getBasename());
return false;
}

View File

@ -526,7 +526,7 @@ int main(int argc, char **argv, char **envp) {
initializeTarget(Registry);
// Initial global variable above for convenience printing of program name.
progname = sys::path::stem(argv[0]);
progname = sys::Path(argv[0]).getBasename();
// Parse the command line options
cl::ParseCommandLineOptions(argc, argv, "llvm linker\n");
@ -538,8 +538,11 @@ int main(int argc, char **argv, char **envp) {
OutputFilename = "a.exe";
// If there is no suffix add an "exe" one.
if (sys::path::extension(OutputFilename).empty())
OutputFilename.append(".exe");
sys::Path ExeFile( OutputFilename );
if (ExeFile.getSuffix() == "") {
ExeFile.appendSuffix("exe");
OutputFilename = ExeFile.str();
}
}
#endif

View File

@ -523,7 +523,7 @@ int main(int argc, char **argv) {
errs().indent(ToolName.size()) << ": DLL Name : " << DLLName << '\n';
}
if (NoUser32 && sys::path::stem(DLLName) == "user32") {
if (NoUser32 && sys::Path(DLLName).getBasename() == "user32") {
// Program is loading user32.dll, in the applications we are testing,
// this only happens if an assert has fired. By now the message has
// already been printed, so simply close the program.