mirror of
https://github.com/RPCSX/llvm.git
synced 2025-04-07 02:31:55 +00:00
Convert Arg, ArgList, and Option to dump() to dbgs() rather than errs().
Also add print() functions. Patch by Justin Lebar! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@256010 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
8281fa7838
commit
96e80fcbfd
@ -113,6 +113,7 @@ public:
|
||||
/// when rendered as a input (e.g., Xlinker).
|
||||
void renderAsInput(const ArgList &Args, ArgStringList &Output) const;
|
||||
|
||||
void print(raw_ostream &O) const;
|
||||
void dump() const;
|
||||
|
||||
/// \brief Return a formatted version of the argument and
|
||||
|
@ -306,6 +306,7 @@ public:
|
||||
const char *GetOrMakeJoinedArgString(unsigned Index, StringRef LHS,
|
||||
StringRef RHS) const;
|
||||
|
||||
void print(raw_ostream &O) const;
|
||||
void dump() const;
|
||||
|
||||
/// @}
|
||||
|
@ -195,6 +195,7 @@ public:
|
||||
/// start.
|
||||
Arg *accept(const ArgList &Args, unsigned &Index, unsigned ArgSize) const;
|
||||
|
||||
void print(raw_ostream &O) const;
|
||||
void dump() const;
|
||||
};
|
||||
|
||||
|
@ -13,6 +13,7 @@
|
||||
#include "llvm/Option/ArgList.h"
|
||||
#include "llvm/Option/Option.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
#include "llvm/Support/Debug.h"
|
||||
|
||||
using namespace llvm;
|
||||
using namespace llvm::opt;
|
||||
@ -43,23 +44,25 @@ Arg::~Arg() {
|
||||
}
|
||||
}
|
||||
|
||||
void Arg::dump() const {
|
||||
llvm::errs() << "<";
|
||||
void Arg::print(raw_ostream& O) const {
|
||||
O << "<";
|
||||
|
||||
llvm::errs() << " Opt:";
|
||||
Opt.dump();
|
||||
O << " Opt:";
|
||||
Opt.print(O);
|
||||
|
||||
llvm::errs() << " Index:" << Index;
|
||||
O << " Index:" << Index;
|
||||
|
||||
llvm::errs() << " Values: [";
|
||||
O << " Values: [";
|
||||
for (unsigned i = 0, e = Values.size(); i != e; ++i) {
|
||||
if (i) llvm::errs() << ", ";
|
||||
llvm::errs() << "'" << Values[i] << "'";
|
||||
if (i) O << ", ";
|
||||
O << "'" << Values[i] << "'";
|
||||
}
|
||||
|
||||
llvm::errs() << "]>\n";
|
||||
O << "]>\n";
|
||||
}
|
||||
|
||||
LLVM_DUMP_METHOD void Arg::dump() const { print(dbgs()); }
|
||||
|
||||
std::string Arg::getAsString(const ArgList &Args) const {
|
||||
SmallString<256> Res;
|
||||
llvm::raw_svector_ostream OS(Res);
|
||||
|
@ -13,6 +13,7 @@
|
||||
#include "llvm/ADT/Twine.h"
|
||||
#include "llvm/Option/Arg.h"
|
||||
#include "llvm/Option/Option.h"
|
||||
#include "llvm/Support/Debug.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
|
||||
using namespace llvm;
|
||||
@ -328,13 +329,15 @@ const char *ArgList::GetOrMakeJoinedArgString(unsigned Index,
|
||||
return MakeArgString(LHS + RHS);
|
||||
}
|
||||
|
||||
LLVM_DUMP_METHOD void ArgList::dump() const {
|
||||
void ArgList::print(raw_ostream &O) const {
|
||||
for (Arg *A : *this) {
|
||||
llvm::errs() << "* ";
|
||||
A->dump();
|
||||
O << "* ";
|
||||
A->print(O);
|
||||
}
|
||||
}
|
||||
|
||||
LLVM_DUMP_METHOD void ArgList::dump() const { print(dbgs()); }
|
||||
|
||||
//
|
||||
|
||||
void InputArgList::releaseMemory() {
|
||||
|
@ -11,6 +11,7 @@
|
||||
#include "llvm/ADT/Twine.h"
|
||||
#include "llvm/Option/Arg.h"
|
||||
#include "llvm/Option/ArgList.h"
|
||||
#include "llvm/Support/Debug.h"
|
||||
#include "llvm/Support/ErrorHandling.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
#include <algorithm>
|
||||
@ -35,10 +36,10 @@ Option::Option(const OptTable::Info *info, const OptTable *owner)
|
||||
}
|
||||
}
|
||||
|
||||
void Option::dump() const {
|
||||
llvm::errs() << "<";
|
||||
void Option::print(raw_ostream &O) const {
|
||||
O << "<";
|
||||
switch (getKind()) {
|
||||
#define P(N) case N: llvm::errs() << #N; break
|
||||
#define P(N) case N: O << #N; break
|
||||
P(GroupClass);
|
||||
P(InputClass);
|
||||
P(UnknownClass);
|
||||
@ -54,33 +55,35 @@ void Option::dump() const {
|
||||
}
|
||||
|
||||
if (Info->Prefixes) {
|
||||
llvm::errs() << " Prefixes:[";
|
||||
for (const char * const *Pre = Info->Prefixes; *Pre != nullptr; ++Pre) {
|
||||
llvm::errs() << '"' << *Pre << (*(Pre + 1) == nullptr ? "\"" : "\", ");
|
||||
O << " Prefixes:[";
|
||||
for (const char *const *Pre = Info->Prefixes; *Pre != nullptr; ++Pre) {
|
||||
O << '"' << *Pre << (*(Pre + 1) == nullptr ? "\"" : "\", ");
|
||||
}
|
||||
llvm::errs() << ']';
|
||||
O << ']';
|
||||
}
|
||||
|
||||
llvm::errs() << " Name:\"" << getName() << '"';
|
||||
O << " Name:\"" << getName() << '"';
|
||||
|
||||
const Option Group = getGroup();
|
||||
if (Group.isValid()) {
|
||||
llvm::errs() << " Group:";
|
||||
Group.dump();
|
||||
O << " Group:";
|
||||
Group.print(O);
|
||||
}
|
||||
|
||||
const Option Alias = getAlias();
|
||||
if (Alias.isValid()) {
|
||||
llvm::errs() << " Alias:";
|
||||
Alias.dump();
|
||||
O << " Alias:";
|
||||
Alias.print(O);
|
||||
}
|
||||
|
||||
if (getKind() == MultiArgClass)
|
||||
llvm::errs() << " NumArgs:" << getNumArgs();
|
||||
O << " NumArgs:" << getNumArgs();
|
||||
|
||||
llvm::errs() << ">\n";
|
||||
O << ">\n";
|
||||
}
|
||||
|
||||
void Option::dump() const { print(dbgs()); }
|
||||
|
||||
bool Option::matches(OptSpecifier Opt) const {
|
||||
// Aliases are never considered in matching, look through them.
|
||||
const Option Alias = getAlias();
|
||||
|
Loading…
x
Reference in New Issue
Block a user