Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are

now cerr, cout, and NullStream resp.

llvm-svn: 32298
This commit is contained in:
Bill Wendling 2006-12-07 01:30:32 +00:00
parent d8e7451dc3
commit f3baad3ee1
111 changed files with 1852 additions and 1687 deletions

View File

@ -53,7 +53,7 @@ int main() {
BB->getInstList().push_back(new ReturnInst(Add));
// Output the bytecode file to stdout
WriteBytecodeToFile(M, llvm_cout);
WriteBytecodeToFile(M, cout);
// Delete the module and all of its contents.
delete M;

View File

@ -29,7 +29,6 @@
#include <bitset>
#include <vector>
#include <functional>
#include <ostream>
namespace llvm {
@ -174,11 +173,11 @@ public:
///
/// Printing and debugging support
///
void print(llvm_ostream &O) const {
void print(OStream &O) const {
if (O.stream()) print(*O.stream());
}
void print(std::ostream &O) const;
void dump() const { print(llvm_cerr); }
void dump() const { print(cerr); }
public:
//
@ -235,6 +234,9 @@ public:
return (I.bitvec == bitvec &&
I.currentWord == currentWord && I.currentBit == currentBit);
}
bool operator!=(const iterator& I) {
return !(*this == I);
}
protected:
static iterator begin(BitSetVector& _bitvec) { return iterator(_bitvec); }
@ -252,7 +254,7 @@ inline void BitSetVector::print(std::ostream& O) const
O << "<" << (*I) << ">" << (I+1 == E? "\n" : ", ");
}
inline llvm_ostream& operator<< (llvm_ostream& O, const BitSetVector& bset) {
inline OStream& operator<< (OStream& O, const BitSetVector& bset) {
bset.print(O);
return O;
}

View File

@ -43,8 +43,8 @@ namespace llvm {
/// if (!I->isLeader()) continue; // Ignore non-leader sets.
/// for (EquivalenceClasses<int>::member_iterator MI = EC.member_begin(I);
/// MI != EC.member_end(); ++MI) // Loop over members in this set.
/// llvm_cerr << *MI << " "; // Print member.
/// llvm_cerr << "\n"; // Finish set.
/// cerr << *MI << " "; // Print member.
/// cerr << "\n"; // Finish set.
/// }
///
/// This example prints:

View File

@ -156,7 +156,7 @@ public:
iterator end() const { return iterator(); }
bool empty() const { return PtrList == 0; }
void print(llvm_ostream &OS) const {
void print(OStream &OS) const {
if (OS.stream()) print(*OS.stream());
}
void print(std::ostream &OS) const;
@ -248,7 +248,7 @@ private:
bool aliasesCallSite(CallSite CS, AliasAnalysis &AA) const;
};
inline llvm_ostream& operator<<(llvm_ostream &OS, const AliasSet &AS) {
inline OStream& operator<<(OStream &OS, const AliasSet &AS) {
AS.print(OS);
return OS;
}
@ -361,7 +361,7 @@ public:
iterator begin() { return AliasSets.begin(); }
iterator end() { return AliasSets.end(); }
void print(llvm_ostream &OS) const {
void print(OStream &OS) const {
if (OS.stream()) print(*OS.stream());
}
void print(std::ostream &OS) const;
@ -390,7 +390,7 @@ private:
AliasSet *findAliasSetForCallSite(CallSite CS);
};
inline llvm_ostream& operator<<(llvm_ostream &OS, const AliasSetTracker &AST) {
inline OStream& operator<<(OStream &OS, const AliasSetTracker &AST) {
AST.print(OS);
return OS;
}

View File

@ -152,7 +152,7 @@ public:
///
void initialize(Module &M);
void print(llvm_ostream &o, const Module *M) const {
void print(OStream &o, const Module *M) const {
if (o.stream()) print(*o.stream(), M);
}
virtual void print(std::ostream &o, const Module *M) const;
@ -201,7 +201,7 @@ public:
/// dump - Print out this call graph node.
///
void dump() const;
void print(llvm_ostream &OS) const {
void print(OStream &OS) const {
if (OS.stream()) print(*OS.stream());
}
void print(std::ostream &OS) const;

View File

@ -378,12 +378,12 @@ public:
/// print - Print a dot graph to the specified ostream...
///
void print(llvm_ostream &O) const {
void print(OStream &O) const {
if (O.stream()) print(*O.stream());
}
void print(std::ostream &O) const;
/// dump - call print(llvm_cerr), for use from the debugger...
/// dump - call print(cerr), for use from the debugger...
///
void dump() const;

View File

@ -362,7 +362,7 @@ public:
///
void forwardNode(DSNode *To, unsigned Offset);
void print(llvm_ostream &O, const DSGraph *G) const {
void print(OStream &O, const DSGraph *G) const {
if (O.stream()) print(*O.stream(), G);
}
void print(std::ostream &O, const DSGraph *G) const;

View File

@ -217,7 +217,7 @@ public:
/// the mapping in the LoopInfo class.
void removeBlockFromLoop(BasicBlock *BB);
void print(llvm_ostream &O, unsigned Depth = 0) const {
void print(OStream &O, unsigned Depth = 0) const {
if (O.stream()) print(*O.stream(), Depth);
}
void print(std::ostream &O, unsigned Depth = 0) const;
@ -283,7 +283,7 @@ public:
virtual bool runOnFunction(Function &F);
virtual void releaseMemory();
void print(llvm_ostream &O, const Module* = 0) const {
void print(OStream &O, const Module* = 0) const {
if (O.stream()) print(*O.stream());
}
void print(std::ostream &O, const Module* = 0) const;

View File

@ -97,7 +97,7 @@ namespace llvm {
/// print - Print out the internal representation of this scalar to the
/// specified stream. This should really only be used for debugging
/// purposes.
void print(llvm_ostream &OS) const {
void print(OStream &OS) const {
if (OS.stream()) print(*OS.stream());
}
virtual void print(std::ostream &OS) const = 0;
@ -107,7 +107,7 @@ namespace llvm {
void dump() const;
};
inline llvm_ostream &operator<<(llvm_ostream &OS, const SCEV &S) {
inline OStream &operator<<(OStream &OS, const SCEV &S) {
S.print(OS);
return OS;
}
@ -128,7 +128,7 @@ namespace llvm {
virtual bool isLoopInvariant(const Loop *L) const;
virtual const Type *getType() const;
virtual bool hasComputableLoopEvolution(const Loop *L) const;
void print(llvm_ostream &OS) const {
void print(OStream &OS) const {
if (OS.stream()) print(*OS.stream());
}
virtual void print(std::ostream &OS) const;
@ -242,7 +242,7 @@ namespace llvm {
virtual bool runOnFunction(Function &F);
virtual void releaseMemory();
virtual void getAnalysisUsage(AnalysisUsage &AU) const;
void print(llvm_ostream &OS, const Module* = 0) const {
void print(OStream &OS, const Module* = 0) const {
if (OS.stream()) print(*OS.stream());
}
virtual void print(std::ostream &OS, const Module* = 0) const;

View File

@ -18,11 +18,11 @@
#ifndef LLVM_ANALYSIS_TRACE_H
#define LLVM_ANALYSIS_TRACE_H
#include "llvm/Support/Streams.h"
#include <vector>
#include <cassert>
namespace llvm {
class llvm_ostream;
class BasicBlock;
class Function;
class Module;
@ -106,7 +106,7 @@ public:
/// print - Write trace to output stream.
///
void print (llvm_ostream &O) const;
void print (OStream &O) const;
/// dump - Debugger convenience method; writes trace to standard error
/// output stream.

View File

@ -25,13 +25,12 @@
namespace llvm {
class PrintModulePass : public ModulePass {
llvm_ostream *Out; // ostream to print on
OStream *Out; // ostream to print on
bool DeleteStream; // Delete the ostream in our dtor?
public:
PrintModulePass() : Out(&llvm_cerr), DeleteStream(false) {}
PrintModulePass(llvm_ostream *o, bool DS = false)
: Out(o), DeleteStream(DS) {
}
PrintModulePass() : Out(&cerr), DeleteStream(false) {}
PrintModulePass(OStream *o, bool DS = false)
: Out(o), DeleteStream(DS) {}
~PrintModulePass() {
if (DeleteStream) delete Out;
@ -49,14 +48,13 @@ public:
class PrintFunctionPass : public FunctionPass {
std::string Banner; // String to print before each function
llvm_ostream *Out; // ostream to print on
OStream *Out; // ostream to print on
bool DeleteStream; // Delete the ostream in our dtor?
public:
PrintFunctionPass() : Banner(""), Out(&llvm_cerr), DeleteStream(false) {}
PrintFunctionPass(const std::string &B, llvm_ostream *o = &llvm_cout,
PrintFunctionPass() : Banner(""), Out(&cerr), DeleteStream(false) {}
PrintFunctionPass(const std::string &B, OStream *o = &cout,
bool DS = false)
: Banner(B), Out(o), DeleteStream(DS) {
}
: Banner(B), Out(o), DeleteStream(DS) {}
inline ~PrintFunctionPass() {
if (DeleteStream) delete Out;

View File

@ -17,19 +17,18 @@
#include "llvm/Pass.h"
#include "llvm/Bytecode/Writer.h"
#include "llvm/Support/Streams.h"
namespace llvm {
class llvm_ostream;
class WriteBytecodePass : public ModulePass {
llvm_ostream *Out; // ostream to print on
OStream *Out; // ostream to print on
bool DeleteStream;
bool CompressFile;
public:
WriteBytecodePass()
: Out(&llvm_cout), DeleteStream(false), CompressFile(true) {}
WriteBytecodePass(llvm_ostream *o, bool DS = false, bool CF = true)
: Out(&cout), DeleteStream(false), CompressFile(true) {}
WriteBytecodePass(OStream *o, bool DS = false, bool CF = true)
: Out(o), DeleteStream(DS), CompressFile(CF) {}
inline ~WriteBytecodePass() {

View File

@ -15,13 +15,14 @@
#ifndef LLVM_BYTECODE_WRITER_H
#define LLVM_BYTECODE_WRITER_H
#include "llvm/Support/Streams.h"
namespace llvm {
class llvm_ostream;
class Module;
/// WriteBytecodeToFile - Write the specified module to the specified output
/// stream. If compress is set to true, try to use compression when writing
/// out the file. This can never fail if M is a well-formed module.
void WriteBytecodeToFile(const Module *M, llvm_ostream &Out,
void WriteBytecodeToFile(const Module *M, OStream &Out,
bool compress = true);
} // End llvm namespace

View File

@ -62,7 +62,7 @@ namespace llvm {
};
std::ostream& operator<<(std::ostream& os, const LiveRange &LR);
inline llvm_ostream& operator<<(llvm_ostream& os, const LiveRange &LR) {
inline OStream& operator<<(OStream& os, const LiveRange &LR) {
if (os.stream()) *os.stream() << LR;
return os;
}
@ -258,9 +258,9 @@ namespace llvm {
return beginNumber() < other.beginNumber();
}
void print(llvm_ostream OS, const MRegisterInfo *MRI = 0) const;
void print(OStream OS, const MRegisterInfo *MRI = 0) const;
void print(std::ostream &OS, const MRegisterInfo *MRI = 0) const {
print(llvm_ostream(OS), MRI);
print(OStream(OS), MRI);
}
void dump() const;
@ -271,7 +271,7 @@ namespace llvm {
LiveInterval& operator=(const LiveInterval& rhs); // DO NOT IMPLEMENT
};
inline llvm_ostream &operator<<(llvm_ostream &OS, const LiveInterval &LI) {
inline OStream &operator<<(OStream &OS, const LiveInterval &LI) {
LI.print(OS);
return OS;
}

View File

@ -189,7 +189,7 @@ public:
// Debugging methods.
void dump() const;
void print(llvm_ostream &OS) const {
void print(OStream &OS) const {
if (OS.stream()) print(*OS.stream());
}
void print(std::ostream &OS) const;
@ -226,7 +226,7 @@ private: // Methods used to maintain doubly linked list of blocks...
};
std::ostream& operator<<(std::ostream &OS, const MachineBasicBlock &MBB);
inline llvm_ostream& operator<<(llvm_ostream &OS, const MachineBasicBlock &MBB){
inline OStream& operator<<(OStream &OS, const MachineBasicBlock &MBB){
if (OS.stream()) *OS.stream() << MBB;
return OS;
}

View File

@ -49,14 +49,14 @@ public:
/// print - Implement operator<<...
///
void print(llvm_ostream &O) const {
void print(OStream &O) const {
if (O.stream()) print(*O.stream());
}
virtual void print(std::ostream &O) const = 0;
};
inline llvm_ostream &operator<<(llvm_ostream &OS,
const MachineConstantPoolValue &V) {
inline OStream &operator<<(OStream &OS,
const MachineConstantPoolValue &V) {
V.print(OS);
return OS;
}
@ -143,7 +143,7 @@ public:
/// print - Used by the MachineFunction printer to print information about
/// constant pool objects. Implemented in MachineFunction.cpp
///
void print(llvm_ostream &OS) const {
void print(OStream &OS) const {
if (OS.stream()) print(*OS.stream());
}
void print(std::ostream &OS) const;

View File

@ -285,7 +285,7 @@ public:
IsDead = false;
}
friend llvm_ostream& operator<<(llvm_ostream& os, const MachineOperand& mop) {
friend OStream& operator<<(OStream& os, const MachineOperand& mop) {
if (os.stream()) *os.stream() << mop;
return os;
}
@ -397,12 +397,12 @@ public:
//
// Debugging support
//
void print(llvm_ostream &OS, const TargetMachine *TM) const {
void print(OStream &OS, const TargetMachine *TM) const {
if (OS.stream()) print(*OS.stream(), TM);
}
void print(std::ostream &OS, const TargetMachine *TM) const;
void dump() const;
friend llvm_ostream& operator<<(llvm_ostream& os, const MachineInstr& minstr){
friend OStream& operator<<(OStream& os, const MachineInstr& minstr){
if (os.stream()) *os.stream() << minstr;
return os;
}

View File

@ -70,7 +70,7 @@ public:
void dump(int indent=0) const;
// Debugging support
void print(llvm_ostream &os) const {
void print(OStream &os) const {
if (os.stream()) print(*os.stream());
}
virtual void print(std::ostream &os) const = 0;
@ -96,8 +96,8 @@ protected:
};
// ostream << operator for SchedGraphNode class
inline llvm_ostream &operator<<(llvm_ostream &os,
const SchedGraphNodeCommon &node) {
inline OStream &operator<<(OStream &os,
const SchedGraphNodeCommon &node) {
node.print(os);
return os;
}
@ -188,7 +188,7 @@ public:
public:
// Debugging support
void print(llvm_ostream &os) const {
void print(OStream &os) const {
if (os.stream()) print(*os.stream());
}
void print(std::ostream &os) const;
@ -200,7 +200,7 @@ private:
};
// ostream << operator for SchedGraphNode class
inline llvm_ostream &operator<<(llvm_ostream &os, const SchedGraphEdge &edge) {
inline OStream &operator<<(OStream &os, const SchedGraphEdge &edge) {
edge.print(os);
return os;
}

View File

@ -295,12 +295,12 @@ public:
/// @{
public:
/// Print the module to an output stream
void print(llvm_ostream &OS) const {
void print(OStream &OS) const {
if (OS.stream()) print(*OS.stream(), 0);
}
void print(std::ostream &OS) const { print(OS, 0); }
/// Print the module to an output stream with AssemblyAnnotationWriter.
void print(llvm_ostream &OS, AssemblyAnnotationWriter *AAW) const {
void print(OStream &OS, AssemblyAnnotationWriter *AAW) const {
if (OS.stream()) print(*OS.stream(), AAW);
}
void print(std::ostream &OS, AssemblyAnnotationWriter *AAW) const;

View File

@ -101,7 +101,7 @@ public:
/// provide the Module* in case the analysis doesn't need it it can just be
/// ignored.
///
void print(llvm_ostream &O, const Module *M) const {
void print(OStream &O, const Module *M) const {
if (O.stream()) print(*O.stream(), M);
}
virtual void print(std::ostream &O, const Module *M) const;

View File

@ -245,13 +245,13 @@ private:
struct foo {
void ext() const;
/* static bool classof(const bar *X) {
llvm_cerr << "Classof: " << X << "\n";
cerr << "Classof: " << X << "\n";
return true;
}*/
};
template <> inline bool isa_impl<foo,bar>(const bar &Val) {
llvm_cerr << "Classof: " << &Val << "\n";
cerr << "Classof: " << &Val << "\n";
return true;
}

View File

@ -141,7 +141,7 @@ class ConstantRange {
/// print - Print out the bounds to a stream...
///
void print(llvm_ostream &OS) const {
void print(OStream &OS) const {
if (OS.stream()) print(*OS.stream());
}
void print(std::ostream &OS) const;

View File

@ -65,10 +65,10 @@ bool isCurrentDebugType(const char *Type);
/// places the std::c* I/O streams into one .cpp file and relieves the whole
/// program from having to have hundreds of static c'tor/d'tors for them.
///
llvm_ostream getErrorOutputStream(const char *DebugType);
OStream getErrorOutputStream(const char *DebugType);
#ifdef NDEBUG
#define DOUT llvm_ostream()
#define DOUT NullStream
#else
#define DOUT getErrorOutputStream(DEBUG_TYPE)
#endif

View File

@ -247,16 +247,16 @@ sys::Path WriteGraph(const GraphType &G,
std::string ErrMsg;
sys::Path Filename = sys::Path::GetTemporaryDirectory(&ErrMsg);
if (Filename.isEmpty()) {
llvm_cerr << "Error: " << ErrMsg << "\n";
cerr << "Error: " << ErrMsg << "\n";
return Filename;
}
Filename.appendComponent(Name + ".dot");
if (Filename.makeUnique(true,&ErrMsg)) {
llvm_cerr << "Error: " << ErrMsg << "\n";
cerr << "Error: " << ErrMsg << "\n";
return sys::Path();
}
llvm_cerr << "Writing '" << Filename << "'... ";
cerr << "Writing '" << Filename << "'... ";
std::ofstream O(Filename.c_str());
@ -275,12 +275,12 @@ sys::Path WriteGraph(const GraphType &G,
// Output the end of the graph
W.writeFooter();
llvm_cerr << " done. \n";
cerr << " done. \n";
O.close();
} else {
llvm_cerr << "error opening file for writing!\n";
cerr << "error opening file for writing!\n";
Filename.clear();
}

View File

@ -65,8 +65,8 @@ public:
virtual void passRegistered(const PassInfo *P) {
if (ignorablePass(P) || !Opt) return;
if (findOption(P->getPassArgument()) != getNumOptions()) {
llvm_cerr << "Two passes with the same argument (-"
<< P->getPassArgument() << ") attempted to be registered!\n";
cerr << "Two passes with the same argument (-"
<< P->getPassArgument() << ") attempted to be registered!\n";
abort();
}
addLiteralOption(P->getPassArgument(), P, P->getPassName());

View File

@ -7,48 +7,64 @@
//
//===----------------------------------------------------------------------===//
//
// This file implements a wrapper for the std::cout and std::cerr I/O streams.
// It prevents the need to include <iostream> to each file just to get I/O.
// This file implements a wrapper for the STL I/O streams. It prevents the need
// to include <iostream> in a file just to get I/O.
//
//===----------------------------------------------------------------------===//
#ifndef LLVM_SUPPORT_STREAMS_H
#define LLVM_SUPPORT_STREAMS_H
#include <ostream> // Doesn't have static d'tors!!
#include <sstream>
namespace llvm {
/// llvm_ostream - Acts like an ostream. It's a wrapper for the std::cerr and
/// std::cout ostreams. However, it doesn't require #including <iostream> in
/// every file, which increases static c'tors & d'tors in the object code.
/// BaseStream - Acts like the STL streams. It's a wrapper for the std::cerr,
/// std::cout, std::cin, etc. streams. However, it doesn't require #including
/// <iostream> in every file (doing so increases static c'tors & d'tors in the
/// object code).
///
class llvm_ostream {
std::ostream* Stream;
template <typename StreamTy>
class BaseStream {
StreamTy *Stream;
public:
llvm_ostream() : Stream(0) {}
llvm_ostream(std::ostream &OStream) : Stream(&OStream) {}
BaseStream() : Stream(0) {}
BaseStream(StreamTy &S) : Stream(&S) {}
BaseStream(StreamTy *S) : Stream(S) {}
std::ostream* stream() const { return Stream; }
StreamTy *stream() const { return Stream; }
inline llvm_ostream &operator << (std::ostream& (*Func)(std::ostream&)) {
inline BaseStream &operator << (StreamTy &(*Func)(StreamTy&)) {
if (Stream) *Stream << Func;
return *this;
}
template <typename Ty>
llvm_ostream &operator << (const Ty &Thing) {
BaseStream &operator << (const Ty &Thing) {
if (Stream) *Stream << Thing;
return *this;
}
bool operator == (const std::ostream &OS) { return &OS == Stream; }
bool operator == (const llvm_ostream &OS) { return OS.Stream == Stream; }
template <typename Ty>
BaseStream &operator >> (const Ty &Thing) {
if (Stream) *Stream >> Thing;
return *this;
}
bool operator == (const StreamTy &S) { return &S == Stream; }
bool operator != (const StreamTy &S) { return !(*this == S); }
bool operator == (const BaseStream &S) { return S.Stream == Stream; }
bool operator != (const BaseStream &S) { return !(*this == S); }
};
extern llvm_ostream llvm_null;
extern llvm_ostream llvm_cout;
extern llvm_ostream llvm_cerr;
typedef BaseStream<std::ostream> OStream;
typedef BaseStream<std::istream> IStream;
typedef BaseStream<std::stringstream> StringStream;
extern OStream NullStream;
extern OStream cout;
extern OStream cerr;
extern IStream cin;
} // End llvm namespace

View File

@ -136,7 +136,7 @@ protected:
///
mutable std::vector<AbstractTypeUser *> AbstractTypeUsers;
public:
void print(llvm_ostream &O) const {
void print(OStream &O) const {
if (O.stream()) print(*O.stream());
}
void print(std::ostream &O) const;

View File

@ -75,7 +75,7 @@ public:
/// print - Implement operator<< on Value...
///
void print(llvm_ostream &O) const {
void print(OStream &O) const {
if (O.stream()) print(*O.stream());
}
virtual void print(std::ostream &O) const = 0;

View File

@ -39,37 +39,33 @@ namespace {
}
void printLine(const char *Desc, unsigned Val, unsigned Sum) {
llvm_cerr << " " << Val << " " << Desc << " responses ("
<< Val*100/Sum << "%)\n";
cerr << " " << Val << " " << Desc << " responses ("
<< Val*100/Sum << "%)\n";
}
~AliasAnalysisCounter() {
unsigned AASum = No+May+Must;
unsigned MRSum = NoMR+JustRef+JustMod+MR;
if (AASum + MRSum) { // Print a report if any counted queries occurred...
llvm_cerr
<< "\n===== Alias Analysis Counter Report =====\n"
<< " Analysis counted: " << Name << "\n"
<< " " << AASum << " Total Alias Queries Performed\n";
cerr << "\n===== Alias Analysis Counter Report =====\n"
<< " Analysis counted: " << Name << "\n"
<< " " << AASum << " Total Alias Queries Performed\n";
if (AASum) {
printLine("no alias", No, AASum);
printLine("may alias", May, AASum);
printLine("must alias", Must, AASum);
llvm_cerr
<< " Alias Analysis Counter Summary: " << No*100/AASum << "%/"
<< May*100/AASum << "%/" << Must*100/AASum<<"%\n\n";
cerr << " Alias Analysis Counter Summary: " << No*100/AASum << "%/"
<< May*100/AASum << "%/" << Must*100/AASum<<"%\n\n";
}
llvm_cerr
<< " " << MRSum << " Total Mod/Ref Queries Performed\n";
cerr << " " << MRSum << " Total Mod/Ref Queries Performed\n";
if (MRSum) {
printLine("no mod/ref", NoMR, MRSum);
printLine("ref", JustRef, MRSum);
printLine("mod", JustMod, MRSum);
printLine("mod/ref", MR, MRSum);
llvm_cerr
<< " Mod/Ref Analysis Counter Summary: " << NoMR*100/MRSum<< "%/"
<< JustRef*100/MRSum << "%/" << JustMod*100/MRSum << "%/"
<< MR*100/MRSum <<"%\n\n";
cerr << " Mod/Ref Analysis Counter Summary: " <<NoMR*100/MRSum<< "%/"
<< JustRef*100/MRSum << "%/" << JustMod*100/MRSum << "%/"
<< MR*100/MRSum <<"%\n\n";
}
}
}
@ -133,10 +129,10 @@ AliasAnalysisCounter::alias(const Value *V1, unsigned V1Size,
}
if (PrintAll || (PrintAllFailures && R == MayAlias)) {
llvm_cerr << AliasString << ":\t";
llvm_cerr << "[" << V1Size << "B] ";
cerr << AliasString << ":\t";
cerr << "[" << V1Size << "B] ";
WriteAsOperand(std::cerr, V1, true, M) << ", ";
llvm_cerr << "[" << V2Size << "B] ";
cerr << "[" << V2Size << "B] ";
WriteAsOperand(std::cerr, V2, true, M) << "\n";
}
@ -157,10 +153,10 @@ AliasAnalysisCounter::getModRefInfo(CallSite CS, Value *P, unsigned Size) {
}
if (PrintAll || (PrintAllFailures && R == ModRef)) {
llvm_cerr << MRString << ": Ptr: ";
llvm_cerr << "[" << Size << "B] ";
cerr << MRString << ": Ptr: ";
cerr << "[" << Size << "B] ";
WriteAsOperand(std::cerr, P, true, M);
llvm_cerr << "\t<->" << *CS.getInstruction();
cerr << "\t<->" << *CS.getInstruction();
}
return R;
}

View File

@ -79,7 +79,7 @@ FunctionPass *llvm::createAAEvalPass() { return new AAEval(); }
static inline void PrintResults(const char *Msg, bool P, Value *V1, Value *V2,
Module *M) {
if (P) {
llvm_cerr << " " << Msg << ":\t";
cerr << " " << Msg << ":\t";
WriteAsOperand(std::cerr, V1, true, M) << ", ";
WriteAsOperand(std::cerr, V2, true, M) << "\n";
}
@ -89,9 +89,9 @@ static inline void
PrintModRefResults(const char *Msg, bool P, Instruction *I, Value *Ptr,
Module *M) {
if (P) {
llvm_cerr << " " << Msg << ": Ptr: ";
cerr << " " << Msg << ": Ptr: ";
WriteAsOperand(std::cerr, Ptr, true, M);
llvm_cerr << "\t<->" << *I;
cerr << "\t<->" << *I;
}
}
@ -125,8 +125,8 @@ bool AAEval::runOnFunction(Function &F) {
if (PrintNoAlias || PrintMayAlias || PrintMustAlias ||
PrintNoModRef || PrintMod || PrintRef || PrintModRef)
llvm_cerr << "Function: " << F.getName() << ": " << Pointers.size()
<< " pointers, " << CallSites.size() << " call sites\n";
cerr << "Function: " << F.getName() << ": " << Pointers.size()
<< " pointers, " << CallSites.size() << " call sites\n";
// iterate over the worklist, and run the full (n^2)/2 disambiguations
for (std::set<Value *>::iterator I1 = Pointers.begin(), E = Pointers.end();
@ -151,7 +151,7 @@ bool AAEval::runOnFunction(Function &F) {
PrintResults("MustAlias", PrintMustAlias, *I1, *I2, F.getParent());
++MustAlias; break;
default:
llvm_cerr << "Unknown alias query result!\n";
cerr << "Unknown alias query result!\n";
}
}
}
@ -181,7 +181,7 @@ bool AAEval::runOnFunction(Function &F) {
PrintModRefResults(" ModRef", PrintModRef, I, *V, F.getParent());
++ModRef; break;
default:
llvm_cerr << "Unknown alias query result!\n";
cerr << "Unknown alias query result!\n";
}
}
}
@ -190,45 +190,45 @@ bool AAEval::runOnFunction(Function &F) {
}
static void PrintPercent(unsigned Num, unsigned Sum) {
llvm_cerr << "(" << Num*100ULL/Sum << "."
cerr << "(" << Num*100ULL/Sum << "."
<< ((Num*1000ULL/Sum) % 10) << "%)\n";
}
bool AAEval::doFinalization(Module &M) {
unsigned AliasSum = NoAlias + MayAlias + MustAlias;
llvm_cerr << "===== Alias Analysis Evaluator Report =====\n";
cerr << "===== Alias Analysis Evaluator Report =====\n";
if (AliasSum == 0) {
llvm_cerr << " Alias Analysis Evaluator Summary: No pointers!\n";
cerr << " Alias Analysis Evaluator Summary: No pointers!\n";
} else {
llvm_cerr << " " << AliasSum << " Total Alias Queries Performed\n";
llvm_cerr << " " << NoAlias << " no alias responses ";
cerr << " " << AliasSum << " Total Alias Queries Performed\n";
cerr << " " << NoAlias << " no alias responses ";
PrintPercent(NoAlias, AliasSum);
llvm_cerr << " " << MayAlias << " may alias responses ";
cerr << " " << MayAlias << " may alias responses ";
PrintPercent(MayAlias, AliasSum);
llvm_cerr << " " << MustAlias << " must alias responses ";
cerr << " " << MustAlias << " must alias responses ";
PrintPercent(MustAlias, AliasSum);
llvm_cerr << " Alias Analysis Evaluator Pointer Alias Summary: "
<< NoAlias*100/AliasSum << "%/" << MayAlias*100/AliasSum << "%/"
<< MustAlias*100/AliasSum << "%\n";
cerr << " Alias Analysis Evaluator Pointer Alias Summary: "
<< NoAlias*100/AliasSum << "%/" << MayAlias*100/AliasSum << "%/"
<< MustAlias*100/AliasSum << "%\n";
}
// Display the summary for mod/ref analysis
unsigned ModRefSum = NoModRef + Mod + Ref + ModRef;
if (ModRefSum == 0) {
llvm_cerr << " Alias Analysis Mod/Ref Evaluator Summary: no mod/ref!\n";
cerr << " Alias Analysis Mod/Ref Evaluator Summary: no mod/ref!\n";
} else {
llvm_cerr << " " << ModRefSum << " Total ModRef Queries Performed\n";
llvm_cerr << " " << NoModRef << " no mod/ref responses ";
cerr << " " << ModRefSum << " Total ModRef Queries Performed\n";
cerr << " " << NoModRef << " no mod/ref responses ";
PrintPercent(NoModRef, ModRefSum);
llvm_cerr << " " << Mod << " mod responses ";
cerr << " " << Mod << " mod responses ";
PrintPercent(Mod, ModRefSum);
llvm_cerr << " " << Ref << " ref responses ";
cerr << " " << Ref << " ref responses ";
PrintPercent(Ref, ModRefSum);
llvm_cerr << " " << ModRef << " mod & ref responses ";
cerr << " " << ModRef << " mod & ref responses ";
PrintPercent(ModRef, ModRefSum);
llvm_cerr << " Alias Analysis Evaluator Mod/Ref Summary: "
<< NoModRef*100/ModRefSum << "%/" << Mod*100/ModRefSum << "%/"
<< Ref*100/ModRefSum << "%/" << ModRef*100/ModRefSum << "%\n";
cerr << " Alias Analysis Evaluator Mod/Ref Summary: "
<< NoModRef*100/ModRefSum << "%/" << Mod*100/ModRefSum << "%/"
<< Ref*100/ModRefSum << "%/" << ModRef*100/ModRefSum << "%\n";
}
return false;

View File

@ -543,8 +543,8 @@ void AliasSetTracker::print(std::ostream &OS) const {
OS << "\n";
}
void AliasSet::dump() const { print (llvm_cerr); }
void AliasSetTracker::dump() const { print(llvm_cerr); }
void AliasSet::dump() const { print (cerr); }
void AliasSetTracker::dump() const { print(cerr); }
//===----------------------------------------------------------------------===//
// AliasSetPrinter Pass
@ -564,7 +564,7 @@ namespace {
for (inst_iterator I = inst_begin(F), E = inst_end(F); I != E; ++I)
Tracker->add(&*I);
Tracker->print(llvm_cerr);
Tracker->print(cerr);
delete Tracker;
return false;
}

View File

@ -745,8 +745,8 @@ BasicAliasAnalysis::CheckGEPInstructions(
assert(Offset1<Offset2 && "There is at least one different constant here!");
if ((uint64_t)(Offset2-Offset1) >= SizeMax) {
//llvm_cerr << "Determined that these two GEP's don't alias ["
// << SizeMax << " bytes]: \n" << *GEP1 << *GEP2;
//cerr << "Determined that these two GEP's don't alias ["
// << SizeMax << " bytes]: \n" << *GEP1 << *GEP2;
return NoAlias;
}
}

View File

@ -92,14 +92,14 @@ namespace {
struct CFGPrinter : public FunctionPass {
virtual bool runOnFunction(Function &F) {
std::string Filename = "cfg." + F.getName() + ".dot";
llvm_cerr << "Writing '" << Filename << "'...";
cerr << "Writing '" << Filename << "'...";
std::ofstream File(Filename.c_str());
if (File.good())
WriteGraph(File, (const Function*)&F);
else
llvm_cerr << " error opening file for writing!";
llvm_cerr << "\n";
cerr << " error opening file for writing!";
cerr << "\n";
return false;
}

View File

@ -370,5 +370,5 @@ void ConstantRange::print(std::ostream &OS) const {
/// dump - Allow printing from a debugger easily...
///
void ConstantRange::dump() const {
print(llvm_cerr);
print(cerr);
}

View File

@ -501,7 +501,7 @@ DSGraph &BUDataStructures::CreateGraphForExternalFunction(const Function &Fn) {
DSG->getNodeForValue(F->arg_begin()).mergeWith(N);
} else {
llvm_cerr << "Unrecognized external function: " << F->getName() << "\n";
cerr << "Unrecognized external function: " << F->getName() << "\n";
abort();
}
@ -588,21 +588,21 @@ void BUDataStructures::calculateGraph(DSGraph &Graph) {
++NumBUInlines;
} else {
if (!Printed)
llvm_cerr << "In Fns: " << Graph.getFunctionNames() << "\n";
llvm_cerr << " calls " << CalledFuncs.size()
<< " fns from site: " << CS.getCallSite().getInstruction()
<< " " << *CS.getCallSite().getInstruction();
llvm_cerr << " Fns =";
cerr << "In Fns: " << Graph.getFunctionNames() << "\n";
cerr << " calls " << CalledFuncs.size()
<< " fns from site: " << CS.getCallSite().getInstruction()
<< " " << *CS.getCallSite().getInstruction();
cerr << " Fns =";
unsigned NumPrinted = 0;
for (std::vector<Function*>::iterator I = CalledFuncs.begin(),
E = CalledFuncs.end(); I != E; ++I) {
if (NumPrinted++ < 8) llvm_cerr << " " << (*I)->getName();
if (NumPrinted++ < 8) cerr << " " << (*I)->getName();
// Add the call edges to the call graph.
ActualCallees.insert(std::make_pair(TheCall, *I));
}
llvm_cerr << "\n";
cerr << "\n";
// See if we already computed a graph for this set of callees.
std::sort(CalledFuncs.begin(), CalledFuncs.end());
@ -645,7 +645,7 @@ void BUDataStructures::calculateGraph(DSGraph &Graph) {
// Clean up the final graph!
GI->removeDeadNodes(DSGraph::KeepUnreachableGlobals);
} else {
llvm_cerr << "***\n*** RECYCLED GRAPH ***\n***\n";
cerr << "***\n*** RECYCLED GRAPH ***\n***\n";
}
GI = IndCallGraph.first;
@ -685,7 +685,7 @@ void BUDataStructures::calculateGraph(DSGraph &Graph) {
E = MainSM.global_end(); I != E; ++I)
RC.getClonedNH(MainSM[*I]);
//Graph.writeGraphToFile(llvm_cerr, "bu_" + F.getName());
//Graph.writeGraphToFile(cerr, "bu_" + F.getName());
}
static const Function *getFnForValue(const Value *V) {
@ -746,8 +746,8 @@ void BUDataStructures::copyValue(Value *From, Value *To) {
return;
}
llvm_cerr << *From;
llvm_cerr << *To;
cerr << *From;
cerr << *To;
assert(0 && "Do not know how to copy this yet!");
abort();
}

View File

@ -17,15 +17,15 @@
//
//===----------------------------------------------------------------------===//
#include "llvm/Analysis/DataStructure/CallTargets.h"
#include "llvm/Module.h"
#include "llvm/Instructions.h"
#include "llvm/Analysis/DataStructure/DataStructure.h"
#include "llvm/Analysis/DataStructure/DSGraph.h"
#include "llvm/Analysis/DataStructure/CallTargets.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Support/Streams.h"
#include <ostream>
#include "llvm/Constants.h"
#include <ostream>
using namespace llvm;
namespace {
@ -58,11 +58,11 @@ void CallTargetFinder::findIndTargets(Module &M)
}
if (N->isComplete() && !IndMap[cs].size()) {
++CompleteEmpty;
llvm_cerr << "Call site empty: '"
<< cs.getInstruction()->getName()
<< "' In '"
<< cs.getInstruction()->getParent()->getParent()->getName()
<< "'\n";
cerr << "Call site empty: '"
<< cs.getInstruction()->getName()
<< "' In '"
<< cs.getInstruction()->getParent()->getParent()->getName()
<< "'\n";
}
} else {
++DirCall;

View File

@ -25,7 +25,6 @@
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SCCIterator.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Support/Streams.h"
#include "llvm/Support/Timer.h"
#include <iostream>
#include <algorithm>
@ -1263,7 +1262,7 @@ DSGraph::~DSGraph() {
}
// dump - Allow inspection of graph in a debugger.
void DSGraph::dump() const { print(llvm_cerr); }
void DSGraph::dump() const { print(cerr); }
/// remapLinks - Change all of the Links in the current node according to the

View File

@ -92,18 +92,18 @@ void DSGraphStats::countCallees(const Function& F) {
totalNumCallees += Callees.size();
++numIndirectCalls;
} else
llvm_cerr << "WARNING: No callee in Function '" << F.getName()
<< "' at call: \n"
<< *I->getCallSite().getInstruction();
cerr << "WARNING: No callee in Function '" << F.getName()
<< "' at call: \n"
<< *I->getCallSite().getInstruction();
}
TotalNumCallees += totalNumCallees;
NumIndirectCalls += numIndirectCalls;
if (numIndirectCalls)
llvm_cout << " In function " << F.getName() << ": "
<< (totalNumCallees / (double) numIndirectCalls)
<< " average callees per indirect call\n";
cout << " In function " << F.getName() << ": "
<< (totalNumCallees / (double) numIndirectCalls)
<< " average callees per indirect call\n";
}
DSNode *DSGraphStats::getNodeForValue(Value *V) {

View File

@ -90,7 +90,7 @@ bool EquivClassGraphs::runOnModule(Module &M) {
if (MainFunc && !MainFunc->isExternal()) {
processSCC(getOrCreateGraph(*MainFunc), Stack, NextID, ValMap);
} else {
llvm_cerr << "Fold Graphs: No 'main' function found!\n";
cerr << "Fold Graphs: No 'main' function found!\n";
}
for (Module::iterator I = M.begin(), E = M.end(); I != E; ++I)

View File

@ -84,8 +84,8 @@ FunctionPass *llvm::createDataStructureGraphCheckerPass() {
DSGC::DSGC() {
if (!AbortIfAnyCollapsed && AbortIfCollapsed.empty() &&
CheckFlags.empty() && AbortIfMerged.empty()) {
llvm_cerr << "The -datastructure-gc is useless if you don't specify any"
" -dsgc-* options. See the -help-hidden output for a list.\n";
cerr << "The -datastructure-gc is useless if you don't specify any"
<< " -dsgc-* options. See the -help-hidden output for a list.\n";
abort();
}
}
@ -123,8 +123,8 @@ void DSGC::verify(const DSGraph &G) {
for (DSGraph::node_const_iterator I = G.node_begin(), E = G.node_end();
I != E; ++I)
if (I->isNodeCompletelyFolded()) {
llvm_cerr << "Node is collapsed: ";
I->print(llvm_cerr, &G);
cerr << "Node is collapsed: ";
I->print(cerr, &G);
abort();
}
}
@ -142,8 +142,8 @@ void DSGC::verify(const DSGraph &G) {
E = CheckFlags.end(); I != E; ++I) {
std::string::size_type ColonPos = I->rfind(':');
if (ColonPos == std::string::npos) {
llvm_cerr << "Error: '" << *I
<< "' is an invalid value for the --dsgc-check-flags option!\n";
cerr << "Error: '" << *I
<< "' is an invalid value for the --dsgc-check-flags option!\n";
abort();
}
@ -158,7 +158,7 @@ void DSGC::verify(const DSGraph &G) {
case 'M': Flags |= DSNode::Modified; break;
case 'R': Flags |= DSNode::Read; break;
case 'A': Flags |= DSNode::Array; break;
default: llvm_cerr << "Invalid DSNode flag!\n"; abort();
default: cerr << "Invalid DSNode flag!\n"; abort();
}
CheckFlagsM[std::string(I->begin(), I->begin()+ColonPos)] = Flags;
}
@ -176,25 +176,25 @@ void DSGC::verify(const DSGraph &G) {
// Verify it is not collapsed if it is not supposed to be...
if (N->isNodeCompletelyFolded() && AbortIfCollapsedS.count(Name)) {
llvm_cerr << "Node for value '%" << Name << "' is collapsed: ";
N->print(llvm_cerr, &G);
cerr << "Node for value '%" << Name << "' is collapsed: ";
N->print(cerr, &G);
abort();
}
if (CheckFlagsM.count(Name) && CheckFlagsM[Name] != N->getNodeFlags()) {
llvm_cerr << "Node flags are not as expected for node: " << Name
<< " (" << CheckFlagsM[Name] << ":" <<N->getNodeFlags()
<< ")\n";
N->print(llvm_cerr, &G);
cerr << "Node flags are not as expected for node: " << Name
<< " (" << CheckFlagsM[Name] << ":" <<N->getNodeFlags()
<< ")\n";
N->print(cerr, &G);
abort();
}
// Verify that it is not merged if it is not supposed to be...
if (AbortIfMergedS.count(Name)) {
if (AbortIfMergedNodes.count(N)) {
llvm_cerr << "Nodes for values '%" << Name << "' and '%"
<< AbortIfMergedNodes[N] << "' is merged: ";
N->print(llvm_cerr, &G);
cerr << "Nodes for values '%" << Name << "' and '%"
<< AbortIfMergedNodes[N] << "' is merged: ";
N->print(cerr, &G);
abort();
}
AbortIfMergedNodes[N] = Name;

View File

@ -434,7 +434,7 @@ void GraphBuilder::visitGetElementPtrInst(User &GEP) {
// Variable index into a node. We must merge all of the elements of the
// sequential type here.
if (isa<PointerType>(STy))
llvm_cerr << "Pointer indexing not handled yet!\n";
cerr << "Pointer indexing not handled yet!\n";
else {
const ArrayType *ATy = cast<ArrayType>(STy);
unsigned ElSize = TD.getTypeSize(CurTy);
@ -1061,7 +1061,7 @@ void GraphBuilder::visitCallSite(CallSite CS) {
if (DisableDirectCallOpt || !isa<Function>(Callee)) {
CalleeNode = getValueDest(*Callee).getNode();
if (CalleeNode == 0) {
llvm_cerr << "WARNING: Program is calling through a null pointer?\n"<< *I;
cerr << "WARNING: Program is calling through a null pointer?\n"<< *I;
return; // Calling a null pointer?
}
}

View File

@ -37,7 +37,7 @@ namespace {
Statistic NumFoldedNodes ("dsa", "Number of folded nodes (in final graph)");
}
void DSNode::dump() const { print(llvm_cerr, 0); }
void DSNode::dump() const { print(cerr, 0); }
static std::string getCaption(const DSNode *N, const DSGraph *G) {
std::stringstream OS;

View File

@ -53,7 +53,7 @@ namespace {
}
// print - Implement the Pass::print method...
void print(llvm_ostream O, const Module *M) const {
void print(OStream O, const Module *M) const {
if (O.stream()) print(*O.stream(), M);
}
void print(std::ostream &O, const Module *M) const {

View File

@ -533,7 +533,7 @@ Andersens::Node *Andersens::getNodeForConstantPointer(Constant *C) {
case Instruction::BitCast:
return getNodeForConstantPointer(CE->getOperand(0));
default:
llvm_cerr << "Constant Expr not yet handled: " << *CE << "\n";
cerr << "Constant Expr not yet handled: " << *CE << "\n";
assert(0);
}
} else {
@ -560,7 +560,7 @@ Andersens::Node *Andersens::getNodeForConstantPointerTarget(Constant *C) {
case Instruction::BitCast:
return getNodeForConstantPointerTarget(CE->getOperand(0));
default:
llvm_cerr << "Constant Expr not yet handled: " << *CE << "\n";
cerr << "Constant Expr not yet handled: " << *CE << "\n";
assert(0);
}
} else {
@ -786,7 +786,7 @@ void Andersens::visitInstruction(Instruction &I) {
return;
default:
// Is this something we aren't handling yet?
llvm_cerr << "Unknown instruction: " << I;
cerr << "Unknown instruction: " << I;
abort();
}
}
@ -1104,13 +1104,13 @@ void Andersens::SolveConstraints() {
void Andersens::PrintNode(Node *N) {
if (N == &GraphNodes[UniversalSet]) {
llvm_cerr << "<universal>";
cerr << "<universal>";
return;
} else if (N == &GraphNodes[NullPtr]) {
llvm_cerr << "<nullptr>";
cerr << "<nullptr>";
return;
} else if (N == &GraphNodes[NullObject]) {
llvm_cerr << "<null>";
cerr << "<null>";
return;
}
@ -1119,56 +1119,56 @@ void Andersens::PrintNode(Node *N) {
if (Function *F = dyn_cast<Function>(V)) {
if (isa<PointerType>(F->getFunctionType()->getReturnType()) &&
N == getReturnNode(F)) {
llvm_cerr << F->getName() << ":retval";
cerr << F->getName() << ":retval";
return;
} else if (F->getFunctionType()->isVarArg() && N == getVarargNode(F)) {
llvm_cerr << F->getName() << ":vararg";
cerr << F->getName() << ":vararg";
return;
}
}
if (Instruction *I = dyn_cast<Instruction>(V))
llvm_cerr << I->getParent()->getParent()->getName() << ":";
cerr << I->getParent()->getParent()->getName() << ":";
else if (Argument *Arg = dyn_cast<Argument>(V))
llvm_cerr << Arg->getParent()->getName() << ":";
cerr << Arg->getParent()->getName() << ":";
if (V->hasName())
llvm_cerr << V->getName();
cerr << V->getName();
else
llvm_cerr << "(unnamed)";
cerr << "(unnamed)";
if (isa<GlobalValue>(V) || isa<AllocationInst>(V))
if (N == getObject(V))
llvm_cerr << "<mem>";
cerr << "<mem>";
}
void Andersens::PrintConstraints() {
llvm_cerr << "Constraints:\n";
cerr << "Constraints:\n";
for (unsigned i = 0, e = Constraints.size(); i != e; ++i) {
llvm_cerr << " #" << i << ": ";
cerr << " #" << i << ": ";
Constraint &C = Constraints[i];
if (C.Type == Constraint::Store)
llvm_cerr << "*";
cerr << "*";
PrintNode(C.Dest);
llvm_cerr << " = ";
cerr << " = ";
if (C.Type == Constraint::Load)
llvm_cerr << "*";
cerr << "*";
PrintNode(C.Src);
llvm_cerr << "\n";
cerr << "\n";
}
}
void Andersens::PrintPointsToGraph() {
llvm_cerr << "Points-to graph:\n";
cerr << "Points-to graph:\n";
for (unsigned i = 0, e = GraphNodes.size(); i != e; ++i) {
Node *N = &GraphNodes[i];
llvm_cerr << "[" << (N->end() - N->begin()) << "] ";
cerr << "[" << (N->end() - N->begin()) << "] ";
PrintNode(N);
llvm_cerr << "\t--> ";
cerr << "\t--> ";
for (Node::iterator I = N->begin(), E = N->end(); I != E; ++I) {
if (I != N->begin()) llvm_cerr << ", ";
if (I != N->begin()) cerr << ", ";
PrintNode(*I);
}
llvm_cerr << "\n";
cerr << "\n";
}
}

View File

@ -74,7 +74,7 @@ public:
AU.setPreservesAll();
}
void print(llvm_ostream &o, const Module *M) const {
void print(OStream &o, const Module *M) const {
if (o.stream()) print(*o.stream(), M);
}
@ -95,7 +95,7 @@ public:
/// dump - Print out this call graph.
///
inline void dump() const {
print(llvm_cerr, Mod);
print(cerr, Mod);
}
CallGraphNode* getExternalCallingNode() const { return ExternalCallingNode; }
@ -212,7 +212,7 @@ void CallGraph::print(std::ostream &OS, const Module *M) const {
}
void CallGraph::dump() const {
print(llvm_cerr, 0);
print(cerr, 0);
}
//===----------------------------------------------------------------------===//
@ -275,7 +275,7 @@ void CallGraphNode::print(std::ostream &OS) const {
OS << "\n";
}
void CallGraphNode::dump() const { print(llvm_cerr); }
void CallGraphNode::dump() const { print(cerr); }
void CallGraphNode::removeCallEdgeTo(CallGraphNode *Callee) {
for (unsigned i = CalledFunctions.size(); ; --i) {

View File

@ -43,7 +43,7 @@ namespace {
#include "llvm/Instruction.def"
void visitInstruction(Instruction &I) {
llvm_cerr << "Instruction Count does not know about " << I;
cerr << "Instruction Count does not know about " << I;
abort();
}
public:

View File

@ -80,7 +80,7 @@ void Loop::print(std::ostream &OS, unsigned Depth) const {
}
void Loop::dump() const {
print(llvm_cerr);
print(cerr);
}

View File

@ -37,7 +37,7 @@ static void ReadProfilingBlock(const char *ToolName, FILE *F,
// Read the number of entries...
unsigned NumEntries;
if (fread(&NumEntries, sizeof(unsigned), 1, F) != 1) {
llvm_cerr << ToolName << ": data packet truncated!\n";
cerr << ToolName << ": data packet truncated!\n";
perror(0);
exit(1);
}
@ -48,7 +48,7 @@ static void ReadProfilingBlock(const char *ToolName, FILE *F,
// Read in the block of data...
if (fread(&TempSpace[0], sizeof(unsigned)*NumEntries, 1, F) != 1) {
llvm_cerr << ToolName << ": data packet truncated!\n";
cerr << ToolName << ": data packet truncated!\n";
perror(0);
exit(1);
}
@ -75,7 +75,7 @@ ProfileInfoLoader::ProfileInfoLoader(const char *ToolName,
Module &TheModule) : M(TheModule) {
FILE *F = fopen(Filename.c_str(), "r");
if (F == 0) {
llvm_cerr << ToolName << ": Error opening '" << Filename << "': ";
cerr << ToolName << ": Error opening '" << Filename << "': ";
perror(0);
exit(1);
}
@ -93,7 +93,7 @@ ProfileInfoLoader::ProfileInfoLoader(const char *ToolName,
case ArgumentInfo: {
unsigned ArgLength;
if (fread(&ArgLength, sizeof(unsigned), 1, F) != 1) {
llvm_cerr << ToolName << ": arguments packet truncated!\n";
cerr << ToolName << ": arguments packet truncated!\n";
perror(0);
exit(1);
}
@ -104,7 +104,7 @@ ProfileInfoLoader::ProfileInfoLoader(const char *ToolName,
if (ArgLength)
if (fread(&Chars[0], (ArgLength+3) & ~3, 1, F) != 1) {
llvm_cerr << ToolName << ": arguments packet truncated!\n";
cerr << ToolName << ": arguments packet truncated!\n";
perror(0);
exit(1);
}
@ -129,7 +129,7 @@ ProfileInfoLoader::ProfileInfoLoader(const char *ToolName,
break;
default:
llvm_cerr << ToolName << ": Unknown packet type #" << PacketType << "!\n";
cerr << ToolName << ": Unknown packet type #" << PacketType << "!\n";
exit(1);
}
}
@ -156,7 +156,7 @@ void ProfileInfoLoader::getFunctionCounts(std::vector<std::pair<Function*,
Counts.push_back(std::make_pair(BlockCounts[i].first->getParent(),
BlockCounts[i].second));
} else {
llvm_cerr << "Function counts are not available!\n";
cerr << "Function counts are not available!\n";
}
return;
}
@ -200,8 +200,8 @@ void ProfileInfoLoader::getBlockCounts(std::vector<std::pair<BasicBlock*,
if (SuccNum >= TI->getNumSuccessors()) {
static bool Warned = false;
if (!Warned) {
llvm_cerr << "WARNING: profile info doesn't seem to match"
<< " the program!\n";
cerr << "WARNING: profile info doesn't seem to match"
<< " the program!\n";
Warned = true;
}
} else {
@ -226,7 +226,7 @@ void ProfileInfoLoader::getBlockCounts(std::vector<std::pair<BasicBlock*,
}
} else {
llvm_cerr << "Block counts are not available!\n";
cerr << "Block counts are not available!\n";
}
return;
}
@ -247,8 +247,8 @@ void ProfileInfoLoader::getBlockCounts(std::vector<std::pair<BasicBlock*,
void ProfileInfoLoader::getEdgeCounts(std::vector<std::pair<Edge,
unsigned> > &Counts) {
if (EdgeCounts.empty()) {
llvm_cerr << "Edge counts not available, and no synthesis "
<< "is implemented yet!\n";
cerr << "Edge counts not available, and no synthesis "
<< "is implemented yet!\n";
return;
}
@ -268,9 +268,8 @@ void ProfileInfoLoader::getEdgeCounts(std::vector<std::pair<Edge,
//
void ProfileInfoLoader::getBBTrace(std::vector<BasicBlock *> &Trace) {
if (BBTrace.empty ()) {
llvm_cerr << "Basic block trace is not available!\n";
cerr << "Basic block trace is not available!\n";
return;
}
llvm_cerr << "Basic block trace loading is not implemented yet!\n";
cerr << "Basic block trace loading is not implemented yet!\n";
}

View File

@ -76,8 +76,8 @@ bool LoaderPass::runOnModule(Module &M) {
TerminatorInst *TI = BB->getTerminator();
if (SuccNum >= TI->getNumSuccessors()) {
if (!PrintedWarning) {
llvm_cerr << "WARNING: profile information is inconsistent with "
<< "the current program!\n";
cerr << "WARNING: profile information is inconsistent with "
<< "the current program!\n";
PrintedWarning = true;
}
} else {

View File

@ -118,7 +118,7 @@ namespace {
//
SCEV::~SCEV() {}
void SCEV::dump() const {
print(llvm_cerr);
print(cerr);
}
/// getValueRange - Return the tightest constant bounds that this value is
@ -1558,11 +1558,11 @@ SCEVHandle ScalarEvolutionsImpl::ComputeIterationCount(const Loop *L) {
break;
default:
#if 0
llvm_cerr << "ComputeIterationCount ";
cerr << "ComputeIterationCount ";
if (ExitCond->getOperand(0)->getType()->isUnsigned())
llvm_cerr << "[unsigned] ";
llvm_cerr << *LHS << " "
<< Instruction::getOpcodeName(Cond) << " " << *RHS << "\n";
cerr << "[unsigned] ";
cerr << *LHS << " "
<< Instruction::getOpcodeName(Cond) << " " << *RHS << "\n";
#endif
break;
}
@ -1678,9 +1678,9 @@ ComputeLoadConstantCompareIterationCount(LoadInst *LI, Constant *RHS,
if (!isa<ConstantBool>(Result)) break; // Couldn't decide for sure
if (cast<ConstantBool>(Result)->getValue() == false) {
#if 0
llvm_cerr << "\n***\n*** Computed loop count " << *ItCst
<< "\n*** From global " << *GV << "*** BB: " << *L->getHeader()
<< "***\n";
cerr << "\n***\n*** Computed loop count " << *ItCst
<< "\n*** From global " << *GV << "*** BB: " << *L->getHeader()
<< "***\n";
#endif
++NumArrayLenItCounts;
return SCEVConstant::get(ItCst); // Found terminating iteration!
@ -2147,8 +2147,8 @@ SCEVHandle ScalarEvolutionsImpl::HowFarToZero(SCEV *V, const Loop *L) {
SCEVConstant *R2 = dyn_cast<SCEVConstant>(Roots.second);
if (R1) {
#if 0
llvm_cerr << "HFTZ: " << *V << " - sol#1: " << *R1
<< " sol#2: " << *R2 << "\n";
cerr << "HFTZ: " << *V << " - sol#1: " << *R1
<< " sol#2: " << *R2 << "\n";
#endif
// Pick the smallest positive root value.
assert(R1->getType()->isUnsigned()&&"Didn't canonicalize to unsigned?");
@ -2276,8 +2276,8 @@ HowManyLessThans(SCEV *LHS, SCEV *RHS, const Loop *L) {
default: break;
}
//llvm_cerr << "Computed Loop Trip Count as: " <<
// *SCEV::getMinusSCEV(RHS, AddRec->getOperand(0)) << "\n";
//cerr << "Computed Loop Trip Count as: "
// << *SCEV::getMinusSCEV(RHS, AddRec->getOperand(0)) << "\n";
return SCEV::getMinusSCEV(RHS, AddRec->getOperand(0));
}
@ -2492,20 +2492,20 @@ static void PrintLoopInfo(std::ostream &OS, const ScalarEvolution *SE,
for (Loop::iterator I = L->begin(), E = L->end(); I != E; ++I)
PrintLoopInfo(OS, SE, *I);
llvm_cerr << "Loop " << L->getHeader()->getName() << ": ";
cerr << "Loop " << L->getHeader()->getName() << ": ";
std::vector<BasicBlock*> ExitBlocks;
L->getExitBlocks(ExitBlocks);
if (ExitBlocks.size() != 1)
llvm_cerr << "<multiple exits> ";
cerr << "<multiple exits> ";
if (SE->hasLoopInvariantIterationCount(L)) {
llvm_cerr << *SE->getIterationCount(L) << " iterations! ";
cerr << *SE->getIterationCount(L) << " iterations! ";
} else {
llvm_cerr << "Unpredictable iteration count. ";
cerr << "Unpredictable iteration count. ";
}
llvm_cerr << "\n";
cerr << "\n";
}
void ScalarEvolution::print(std::ostream &OS, const Module* ) const {

View File

@ -13,9 +13,8 @@
//
//===----------------------------------------------------------------------===//
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/ScalarEvolutionExpander.h"
#include "llvm/Analysis/LoopInfo.h"
using namespace llvm;
/// InsertCastOfTo - Insert a cast of V to the specified type, doing what
@ -175,7 +174,7 @@ Value *SCEVExpander::visitAddRecExpr(SCEVAddRecExpr *S) {
SCEVHandle IH = SCEVUnknown::get(I); // Get I as a "symbolic" SCEV.
SCEVHandle V = S->evaluateAtIteration(IH);
//llvm_cerr << "Evaluated: " << *this << "\n to: " << *V << "\n";
//cerr << "Evaluated: " << *this << "\n to: " << *V << "\n";
return expandInTy(V, Ty);
}

View File

@ -25,14 +25,13 @@ Function *Trace::getFunction() const {
return getEntryBasicBlock()->getParent();
}
Module *Trace::getModule() const {
return getFunction()->getParent();
}
/// print - Write trace to output stream.
///
void Trace::print(llvm_ostream &O) const {
void Trace::print(OStream &O) const {
Function *F = getFunction ();
O << "; Trace from function " << F->getName() << ", blocks:\n";
for (const_iterator i = begin(), e = end(); i != e; ++i) {
@ -48,5 +47,5 @@ void Trace::print(llvm_ostream &O) const {
/// output stream.
///
void Trace::dump() const {
print(llvm_cerr);
print(cerr);
}

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,9 @@
/* A Bison parser, made by GNU Bison 2.1. */
/* A Bison parser, made by GNU Bison 2.3. */
/* Skeleton parser for Yacc-like parsing with Bison,
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
/* Skeleton interface for Bison's Yacc-like parsers in C
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -18,10 +20,18 @@
Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
/* As a special exception, when this file is copied by Bison into a
Bison output file, you may use that output file without restriction.
This special exception was added by the Free Software Foundation
in version 1.24 of Bison. */
/* As a special exception, you may create a larger work that contains
part or all of the Bison parser skeleton and distribute that work
under terms of your choice, so long as that work isn't itself a
parser generator using the skeleton or a modified version thereof
as a parser skeleton. Alternatively, if you modify or redistribute
the parser skeleton itself, you may (at your option) remove this
special exception, which will cause the skeleton and the resulting
Bison output files to be licensed under the GNU General Public
License without this special exception.
This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */
/* Tokens. */
#ifndef YYTOKENTYPE
@ -320,9 +330,10 @@
#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
#line 855 "/proj/llvm/llvm-1/lib/AsmParser/llvmAsmParser.y"
typedef union YYSTYPE {
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
typedef union YYSTYPE
#line 855 "/Volumes/Gir/devel/llvm/llvm.src/lib/AsmParser/llvmAsmParser.y"
{
llvm::Module *ModuleVal;
llvm::Function *FunctionVal;
std::pair<llvm::PATypeHolder*, char*> *ArgVal;
@ -363,9 +374,10 @@ typedef union YYSTYPE {
llvm::Module::Endianness Endianness;
llvm::ICmpInst::Predicate IPredicate;
llvm::FCmpInst::Predicate FPredicate;
} YYSTYPE;
/* Line 1447 of yacc.c. */
#line 369 "llvmAsmParser.tab.h"
}
/* Line 1529 of yacc.c. */
#line 380 "llvmAsmParser.tab.h"
YYSTYPE;
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1
@ -373,5 +385,3 @@ typedef union YYSTYPE {
extern YYSTYPE llvmAsmlval;

View File

@ -57,7 +57,7 @@ static Module *ParserResult;
//
//#define DEBUG_UPREFS 1
#ifdef DEBUG_UPREFS
#define UR_OUT(X) llvm_cerr << X
#define UR_OUT(X) cerr << X
#else
#define UR_OUT(X)
#endif
@ -2390,8 +2390,8 @@ InstVal : ArithmeticOps Types ValueRef ',' ValueRef {
GEN_ERROR("fcmp operator returned null!");
}
| NOT ResolvedVal {
llvm_cerr << "WARNING: Use of eliminated 'not' instruction:"
<< " Replacing with 'xor'.\n";
cerr << "WARNING: Use of eliminated 'not' instruction:"
<< " Replacing with 'xor'.\n";
Value *Ones = ConstantIntegral::getAllOnesValue($2->getType());
if (Ones == 0)

View File

@ -57,7 +57,7 @@ static Module *ParserResult;
//
//#define DEBUG_UPREFS 1
#ifdef DEBUG_UPREFS
#define UR_OUT(X) llvm_cerr << X
#define UR_OUT(X) cerr << X
#else
#define UR_OUT(X)
#endif
@ -2390,8 +2390,8 @@ InstVal : ArithmeticOps Types ValueRef ',' ValueRef {
GEN_ERROR("fcmp operator returned null!");
}
| NOT ResolvedVal {
llvm_cerr << "WARNING: Use of eliminated 'not' instruction:"
<< " Replacing with 'xor'.\n";
cerr << "WARNING: Use of eliminated 'not' instruction:"
<< " Replacing with 'xor'.\n";
Value *Ones = ConstantIntegral::getAllOnesValue($2->getType());
if (Ones == 0)

View File

@ -32,7 +32,7 @@ using namespace llvm;
#if 0
#include "llvm/Support/Streams.h"
#define SC_DEBUG(X) llvm_cerr << X
#define SC_DEBUG(X) cerr << X
#else
#define SC_DEBUG(X)
#endif

View File

@ -276,8 +276,8 @@ void BytecodeWriter::outputType(const Type *T) {
break;
default:
llvm_cerr << __FILE__ << ":" << __LINE__ << ": Don't know how to serialize"
<< " Type '" << T->getDescription() << "'\n";
cerr << __FILE__ << ":" << __LINE__ << ": Don't know how to serialize"
<< " Type '" << T->getDescription() << "'\n";
break;
}
}
@ -387,8 +387,8 @@ void BytecodeWriter::outputConstant(const Constant *CPV) {
case Type::VoidTyID:
case Type::LabelTyID:
default:
llvm_cerr << __FILE__ << ":" << __LINE__ << ": Don't know how to serialize"
<< " type '" << *CPV->getType() << "'\n";
cerr << __FILE__ << ":" << __LINE__ << ": Don't know how to serialize"
<< " type '" << *CPV->getType() << "'\n";
break;
}
return;
@ -1239,13 +1239,13 @@ void BytecodeWriter::outputSymbolTable(const SymbolTable &MST) {
}
}
void llvm::WriteBytecodeToFile(const Module *M, llvm_ostream &Out,
void llvm::WriteBytecodeToFile(const Module *M, OStream &Out,
bool compress) {
assert(M && "You can't write a null module!!");
// Make sure that std::cout is put into binary mode for systems
// that care.
if (Out == llvm_cout)
if (Out == cout)
sys::Program::ChangeStdoutToBinary();
// Create a vector of unsigned char for the bytecode output. We

View File

@ -25,7 +25,6 @@
#include "llvm/Target/TargetData.h"
#include "llvm/Target/TargetLowering.h"
#include "llvm/Target/TargetMachine.h"
#include <ostream>
#include <cerrno>
using namespace llvm;
@ -668,8 +667,8 @@ void AsmPrinter::PrintSpecial(const MachineInstr *MI, const char *Code) {
if (LastMI != MI) { ++Counter; LastMI = MI; }
O << Counter;
} else {
llvm_cerr << "Unknown special formatter '" << Code
<< "' for machine instr: " << *MI;
cerr << "Unknown special formatter '" << Code
<< "' for machine instr: " << *MI;
exit(1);
}
}
@ -737,8 +736,8 @@ void AsmPrinter::printInlineAsm(const MachineInstr *MI) const {
case '(': // $( -> same as GCC's { character.
++LastEmitted; // Consume '(' character.
if (CurVariant != -1) {
llvm_cerr << "Nested variants found in inline asm string: '"
<< AsmStr << "'\n";
cerr << "Nested variants found in inline asm string: '"
<< AsmStr << "'\n";
exit(1);
}
CurVariant = 0; // We're in the first variant now.
@ -746,8 +745,8 @@ void AsmPrinter::printInlineAsm(const MachineInstr *MI) const {
case '|':
++LastEmitted; // consume '|' character.
if (CurVariant == -1) {
llvm_cerr << "Found '|' character outside of variant in inline asm "
<< "string: '" << AsmStr << "'\n";
cerr << "Found '|' character outside of variant in inline asm "
<< "string: '" << AsmStr << "'\n";
exit(1);
}
++CurVariant; // We're in the next variant.
@ -755,8 +754,8 @@ void AsmPrinter::printInlineAsm(const MachineInstr *MI) const {
case ')': // $) -> same as GCC's } char.
++LastEmitted; // consume ')' character.
if (CurVariant == -1) {
llvm_cerr << "Found '}' character outside of variant in inline asm "
<< "string: '" << AsmStr << "'\n";
cerr << "Found '}' character outside of variant in inline asm "
<< "string: '" << AsmStr << "'\n";
exit(1);
}
CurVariant = -1;
@ -774,8 +773,8 @@ void AsmPrinter::printInlineAsm(const MachineInstr *MI) const {
char *IDEnd;
long Val = strtol(IDStart, &IDEnd, 10); // We only accept numbers for IDs.
if (!isdigit(*IDStart) || (Val == 0 && errno == EINVAL)) {
llvm_cerr << "Bad $ operand number in inline asm string: '"
<< AsmStr << "'\n";
cerr << "Bad $ operand number in inline asm string: '"
<< AsmStr << "'\n";
exit(1);
}
LastEmitted = IDEnd;
@ -788,8 +787,8 @@ void AsmPrinter::printInlineAsm(const MachineInstr *MI) const {
if (*LastEmitted == ':') {
++LastEmitted; // Consume ':' character.
if (*LastEmitted == 0) {
llvm_cerr << "Bad ${:} expression in inline asm string: '"
<< AsmStr << "'\n";
cerr << "Bad ${:} expression in inline asm string: '"
<< AsmStr << "'\n";
exit(1);
}
@ -798,16 +797,16 @@ void AsmPrinter::printInlineAsm(const MachineInstr *MI) const {
}
if (*LastEmitted != '}') {
llvm_cerr << "Bad ${} expression in inline asm string: '"
<< AsmStr << "'\n";
cerr << "Bad ${} expression in inline asm string: '"
<< AsmStr << "'\n";
exit(1);
}
++LastEmitted; // Consume '}' character.
}
if ((unsigned)Val >= NumOperands-1) {
llvm_cerr << "Invalid $ operand number in inline asm string: '"
<< AsmStr << "'\n";
cerr << "Invalid $ operand number in inline asm string: '"
<< AsmStr << "'\n";
exit(1);
}
@ -841,8 +840,8 @@ void AsmPrinter::printInlineAsm(const MachineInstr *MI) const {
}
}
if (Error) {
llvm_cerr << "Invalid operand found in inline asm: '"
<< AsmStr << "'\n";
cerr << "Invalid operand found in inline asm: '"
<< AsmStr << "'\n";
MI->dump();
exit(1);
}

View File

@ -31,10 +31,8 @@
#include "llvm/Target/TargetData.h"
#include "llvm/Target/TargetMachine.h"
#include "llvm/Target/TargetFrameInfo.h"
#include <ostream>
#include <string>
using namespace llvm;
using namespace llvm::dwarf;
@ -139,7 +137,7 @@ public:
}
#ifndef NDEBUG
void print(llvm_ostream &O) const {
void print(OStream &O) const {
if (O.stream()) print(*O.stream());
}
void print(std::ostream &O) const {
@ -247,7 +245,7 @@ public:
void Emit(const Dwarf &DW) const;
#ifndef NDEBUG
void print(llvm_ostream &O) {
void print(OStream &O) {
if (O.stream()) print(*O.stream());
}
void print(std::ostream &O);
@ -337,7 +335,7 @@ public:
void Profile(FoldingSetNodeID &ID) ;
#ifndef NDEBUG
void print(llvm_ostream &O, unsigned IncIndent = 0) {
void print(OStream &O, unsigned IncIndent = 0) {
if (O.stream()) print(*O.stream(), IncIndent);
}
void print(std::ostream &O, unsigned IncIndent = 0);
@ -388,7 +386,7 @@ public:
virtual void Profile(FoldingSetNodeID &ID) = 0;
#ifndef NDEBUG
void print(llvm_ostream &O) {
void print(OStream &O) {
if (O.stream()) print(*O.stream());
}
virtual void print(std::ostream &O) = 0;
@ -2861,14 +2859,14 @@ void DIEAbbrev::print(std::ostream &O) {
<< "\n";
}
}
void DIEAbbrev::dump() { print(llvm_cerr); }
void DIEAbbrev::dump() { print(cerr); }
#endif
//===----------------------------------------------------------------------===//
#ifndef NDEBUG
void DIEValue::dump() {
print(llvm_cerr);
print(cerr);
}
#endif
@ -3079,7 +3077,7 @@ void DIE::print(std::ostream &O, unsigned IncIndent) {
}
void DIE::dump() {
print(llvm_cerr);
print(cerr);
}
#endif

View File

@ -39,7 +39,6 @@
#include "llvm/Target/TargetMachine.h"
#include "llvm/Support/Mangler.h"
#include "llvm/Support/Streams.h"
#include <ostream>
using namespace llvm;
//===----------------------------------------------------------------------===//
@ -104,9 +103,9 @@ void ELFCodeEmitter::startFunction(MachineFunction &F) {
ELFWriter::ELFSection::SHF_EXECINSTR |
ELFWriter::ELFSection::SHF_ALLOC);
OutBuffer = &ES->SectionData;
llvm_cerr << "FIXME: This code needs to be updated for changes in the"
<< " CodeEmitter interfaces. In particular, this should set "
<< "BufferBegin/BufferEnd/CurBufferPtr, not deal with OutBuffer!";
cerr << "FIXME: This code needs to be updated for changes in the"
<< " CodeEmitter interfaces. In particular, this should set "
<< "BufferBegin/BufferEnd/CurBufferPtr, not deal with OutBuffer!";
abort();
// Upgrade the section alignment if required.

View File

@ -274,12 +274,12 @@ void IntrinsicLowering::LowerIntrinsicCall(CallInst *CI) {
switch (Callee->getIntrinsicID()) {
case Intrinsic::not_intrinsic:
llvm_cerr << "Cannot lower a call to a non-intrinsic function '"
<< Callee->getName() << "'!\n";
cerr << "Cannot lower a call to a non-intrinsic function '"
<< Callee->getName() << "'!\n";
abort();
default:
llvm_cerr << "Error: Code generator does not support intrinsic function '"
<< Callee->getName() << "'!\n";
cerr << "Error: Code generator does not support intrinsic function '"
<< Callee->getName() << "'!\n";
abort();
// The setjmp/longjmp intrinsics should only exist in the code if it was
@ -356,9 +356,9 @@ void IntrinsicLowering::LowerIntrinsicCall(CallInst *CI) {
case Intrinsic::stackrestore: {
static bool Warned = false;
if (!Warned)
llvm_cerr << "WARNING: this target does not support the llvm.stack"
<< (Callee->getIntrinsicID() == Intrinsic::stacksave ?
"save" : "restore") << " intrinsic.\n";
cerr << "WARNING: this target does not support the llvm.stack"
<< (Callee->getIntrinsicID() == Intrinsic::stacksave ?
"save" : "restore") << " intrinsic.\n";
Warned = true;
if (Callee->getIntrinsicID() == Intrinsic::stacksave)
CI->replaceAllUsesWith(Constant::getNullValue(CI->getType()));
@ -367,9 +367,9 @@ void IntrinsicLowering::LowerIntrinsicCall(CallInst *CI) {
case Intrinsic::returnaddress:
case Intrinsic::frameaddress:
llvm_cerr << "WARNING: this target does not support the llvm."
<< (Callee->getIntrinsicID() == Intrinsic::returnaddress ?
"return" : "frame") << "address intrinsic.\n";
cerr << "WARNING: this target does not support the llvm."
<< (Callee->getIntrinsicID() == Intrinsic::returnaddress ?
"return" : "frame") << "address intrinsic.\n";
CI->replaceAllUsesWith(ConstantPointerNull::get(
cast<PointerType>(CI->getType())));
break;
@ -380,8 +380,8 @@ void IntrinsicLowering::LowerIntrinsicCall(CallInst *CI) {
case Intrinsic::pcmarker:
break; // Simply strip out pcmarker on unsupported architectures
case Intrinsic::readcyclecounter: {
llvm_cerr << "WARNING: this target does not support the llvm.readcyclecoun"
<< "ter intrinsic. It is being lowered to a constant 0\n";
cerr << "WARNING: this target does not support the llvm.readcyclecoun"
<< "ter intrinsic. It is being lowered to a constant 0\n";
CI->replaceAllUsesWith(ConstantInt::get(Type::ULongTy, 0));
break;
}

View File

@ -23,7 +23,6 @@
#include "llvm/Support/Streams.h"
#include "llvm/Target/MRegisterInfo.h"
#include <algorithm>
#include <iostream>
#include <map>
using namespace llvm;
@ -472,10 +471,10 @@ std::ostream& llvm::operator<<(std::ostream& os, const LiveRange &LR) {
}
void LiveRange::dump() const {
llvm_cerr << *this << "\n";
cerr << *this << "\n";
}
void LiveInterval::print(llvm_ostream OS, const MRegisterInfo *MRI) const {
void LiveInterval::print(OStream OS, const MRegisterInfo *MRI) const {
if (MRI && MRegisterInfo::isPhysicalRegister(reg))
OS << MRI->getName(reg);
else
@ -508,5 +507,5 @@ void LiveInterval::print(llvm_ostream OS, const MRegisterInfo *MRI) const {
}
void LiveInterval::dump() const {
llvm_cerr << *this << "\n";
cerr << *this << "\n";
}

View File

@ -419,9 +419,9 @@ addIntervalsForSpills(const LiveInterval &li, VirtRegMap &vrm, int slot) {
void LiveIntervals::printRegName(unsigned reg) const {
if (MRegisterInfo::isPhysicalRegister(reg))
llvm_cerr << mri_->getName(reg);
cerr << mri_->getName(reg);
else
llvm_cerr << "%reg" << reg;
cerr << "%reg" << reg;
}
/// isReDefinedByTwoAddr - Returns true if the Reg re-definition is due to

View File

@ -18,7 +18,6 @@
#include "llvm/Target/MRegisterInfo.h"
#include "llvm/Support/LeakDetector.h"
#include "llvm/Support/Streams.h"
#include <iostream>
using namespace llvm;
/// MachineInstr ctor - This constructor creates a dummy MachineInstr with
@ -201,7 +200,7 @@ void MachineInstr::copyKillDeadInfo(const MachineInstr *MI) {
}
void MachineInstr::dump() const {
llvm_cerr << " " << *this;
cerr << " " << *this;
}
static inline void OutputReg(std::ostream &os, unsigned RegNo,

View File

@ -112,11 +112,11 @@ void VirtRegMap::virtFolded(unsigned VirtReg, MachineInstr *OldMI,
}
void VirtRegMap::print(std::ostream &OS) const {
llvm_ostream LOS(OS);
OStream LOS(OS);
print(LOS);
}
void VirtRegMap::print(llvm_ostream &OS) const {
void VirtRegMap::print(OStream &OS) const {
const MRegisterInfo* MRI = MF.getTarget().getRegisterInfo();
OS << "********** REGISTER MAP **********\n";
@ -135,7 +135,7 @@ void VirtRegMap::print(llvm_ostream &OS) const {
}
void VirtRegMap::dump() const {
llvm_ostream OS = DOUT;
OStream OS = DOUT;
print(OS);
}

View File

@ -19,12 +19,12 @@
#include "llvm/Target/MRegisterInfo.h"
#include "llvm/ADT/DenseMap.h"
#include "llvm/Support/Streams.h"
#include <map>
namespace llvm {
class MachineInstr;
class TargetInstrInfo;
class llvm_ostream;
class VirtRegMap {
public:
@ -145,7 +145,7 @@ namespace llvm {
}
void print(std::ostream &OS) const;
void print(llvm_ostream &OS) const;
void print(OStream &OS) const;
void dump() const;
};

View File

@ -402,7 +402,7 @@ GenericValue ExecutionEngine::getConstantValue(const Constant *C) {
default:
break;
}
llvm_cerr << "ConstantExpr not handled as global var init: " << *CE << "\n";
cerr << "ConstantExpr not handled as global var init: " << *CE << "\n";
abort();
}
@ -432,7 +432,7 @@ GenericValue ExecutionEngine::getConstantValue(const Constant *C) {
assert(0 && "Unknown constant pointer type!");
break;
default:
llvm_cerr << "ERROR: Constant unimp for type: " << *C->getType() << "\n";
cerr << "ERROR: Constant unimp for type: " << *C->getType() << "\n";
abort();
}
return Result;
@ -477,7 +477,7 @@ void ExecutionEngine::StoreValueToMemory(GenericValue Val, GenericValue *Ptr,
Ptr->Untyped[7] = (unsigned char)(Val.ULongVal >> 56);
break;
default:
llvm_cerr << "Cannot store value of type " << *Ty << "!\n";
cerr << "Cannot store value of type " << *Ty << "!\n";
}
} else {
switch (Ty->getTypeID()) {
@ -511,7 +511,7 @@ void ExecutionEngine::StoreValueToMemory(GenericValue Val, GenericValue *Ptr,
Ptr->Untyped[0] = (unsigned char)(Val.ULongVal >> 56);
break;
default:
llvm_cerr << "Cannot store value of type " << *Ty << "!\n";
cerr << "Cannot store value of type " << *Ty << "!\n";
}
}
}
@ -552,7 +552,7 @@ GenericValue ExecutionEngine::LoadValueFromMemory(GenericValue *Ptr,
((uint64_t)Ptr->Untyped[7] << 56);
break;
default:
llvm_cerr << "Cannot load value of type " << *Ty << "!\n";
cerr << "Cannot load value of type " << *Ty << "!\n";
abort();
}
} else {
@ -586,7 +586,7 @@ GenericValue ExecutionEngine::LoadValueFromMemory(GenericValue *Ptr,
((uint64_t)Ptr->Untyped[0] << 56);
break;
default:
llvm_cerr << "Cannot load value of type " << *Ty << "!\n";
cerr << "Cannot load value of type " << *Ty << "!\n";
abort();
}
}
@ -634,7 +634,7 @@ void ExecutionEngine::InitializeMemory(const Constant *Init, void *Addr) {
}
default:
llvm_cerr << "Bad Type: " << *Init->getType() << "\n";
cerr << "Bad Type: " << *Init->getType() << "\n";
assert(0 && "Unknown constant type to initialize memory with!");
}
}
@ -718,8 +718,8 @@ void ExecutionEngine::emitGlobals() {
sys::DynamicLibrary::SearchForAddressOfSymbol(I->getName().c_str()))
addGlobalMapping(I, SymAddr);
else {
llvm_cerr << "Could not resolve external global address: "
<< I->getName() << "\n";
cerr << "Could not resolve external global address: "
<< I->getName() << "\n";
abort();
}
}

View File

@ -188,7 +188,7 @@ GenericValue Interpreter::getConstantExprValue (ConstantExpr *CE,
getOperandValue(CE->getOperand(1), SF),
getOperandValue(CE->getOperand(2), SF));
default:
llvm_cerr << "Unhandled ConstantExpr: " << *CE << "\n";
cerr << "Unhandled ConstantExpr: " << *CE << "\n";
abort();
return GenericValue();
}
@ -236,7 +236,7 @@ static GenericValue executeAddInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_BINARY_OPERATOR(+, Float);
IMPLEMENT_BINARY_OPERATOR(+, Double);
default:
llvm_cerr << "Unhandled type for Add instruction: " << *Ty << "\n";
cerr << "Unhandled type for Add instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -257,7 +257,7 @@ static GenericValue executeSubInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_BINARY_OPERATOR(-, Float);
IMPLEMENT_BINARY_OPERATOR(-, Double);
default:
llvm_cerr << "Unhandled type for Sub instruction: " << *Ty << "\n";
cerr << "Unhandled type for Sub instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -278,7 +278,7 @@ static GenericValue executeMulInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_BINARY_OPERATOR(*, Float);
IMPLEMENT_BINARY_OPERATOR(*, Double);
default:
llvm_cerr << "Unhandled type for Mul instruction: " << *Ty << "\n";
cerr << "Unhandled type for Mul instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -296,7 +296,7 @@ static GenericValue executeUDivInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SIGNLESS_BINOP(/, UInt, Int);
IMPLEMENT_SIGNLESS_BINOP(/, ULong, Long);
default:
llvm_cerr << "Unhandled type for UDiv instruction: " << *Ty << "\n";
cerr << "Unhandled type for UDiv instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -311,7 +311,7 @@ static GenericValue executeSDivInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SIGNLESS_BINOP(/, Int, UInt);
IMPLEMENT_SIGNLESS_BINOP(/, Long, ULong);
default:
llvm_cerr << "Unhandled type for SDiv instruction: " << *Ty << "\n";
cerr << "Unhandled type for SDiv instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -324,7 +324,7 @@ static GenericValue executeFDivInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_BINARY_OPERATOR(/, Float);
IMPLEMENT_BINARY_OPERATOR(/, Double);
default:
llvm_cerr << "Unhandled type for Div instruction: " << *Ty << "\n";
cerr << "Unhandled type for Div instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -339,7 +339,7 @@ static GenericValue executeURemInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SIGNLESS_BINOP(%, UInt, Int);
IMPLEMENT_SIGNLESS_BINOP(%, ULong, Long);
default:
llvm_cerr << "Unhandled type for URem instruction: " << *Ty << "\n";
cerr << "Unhandled type for URem instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -354,7 +354,7 @@ static GenericValue executeSRemInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SIGNLESS_BINOP(%, Int, UInt);
IMPLEMENT_SIGNLESS_BINOP(%, Long, ULong);
default:
llvm_cerr << "Unhandled type for Rem instruction: " << *Ty << "\n";
cerr << "Unhandled type for Rem instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -371,7 +371,7 @@ static GenericValue executeFRemInst(GenericValue Src1, GenericValue Src2,
Dest.DoubleVal = fmod(Src1.DoubleVal, Src2.DoubleVal);
break;
default:
llvm_cerr << "Unhandled type for Rem instruction: " << *Ty << "\n";
cerr << "Unhandled type for Rem instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -391,7 +391,7 @@ static GenericValue executeAndInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_BINARY_OPERATOR(&, ULong);
IMPLEMENT_BINARY_OPERATOR(&, Long);
default:
llvm_cerr << "Unhandled type for And instruction: " << *Ty << "\n";
cerr << "Unhandled type for And instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -411,7 +411,7 @@ static GenericValue executeOrInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_BINARY_OPERATOR(|, ULong);
IMPLEMENT_BINARY_OPERATOR(|, Long);
default:
llvm_cerr << "Unhandled type for Or instruction: " << *Ty << "\n";
cerr << "Unhandled type for Or instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -431,7 +431,7 @@ static GenericValue executeXorInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_BINARY_OPERATOR(^, ULong);
IMPLEMENT_BINARY_OPERATOR(^, Long);
default:
llvm_cerr << "Unhandled type for Xor instruction: " << *Ty << "\n";
cerr << "Unhandled type for Xor instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -465,7 +465,7 @@ static GenericValue executeSetEQInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SETCC(==, Double);
IMPLEMENT_POINTERSETCC(==);
default:
llvm_cerr << "Unhandled type for SetEQ instruction: " << *Ty << "\n";
cerr << "Unhandled type for SetEQ instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -488,7 +488,7 @@ static GenericValue executeSetNEInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_POINTERSETCC(!=);
default:
llvm_cerr << "Unhandled type for SetNE instruction: " << *Ty << "\n";
cerr << "Unhandled type for SetNE instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -510,7 +510,7 @@ static GenericValue executeSetLEInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SETCC(<=, Double);
IMPLEMENT_POINTERSETCC(<=);
default:
llvm_cerr << "Unhandled type for SetLE instruction: " << *Ty << "\n";
cerr << "Unhandled type for SetLE instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -532,7 +532,7 @@ static GenericValue executeSetGEInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SETCC(>=, Double);
IMPLEMENT_POINTERSETCC(>=);
default:
llvm_cerr << "Unhandled type for SetGE instruction: " << *Ty << "\n";
cerr << "Unhandled type for SetGE instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -554,7 +554,7 @@ static GenericValue executeSetLTInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SETCC(<, Double);
IMPLEMENT_POINTERSETCC(<);
default:
llvm_cerr << "Unhandled type for SetLT instruction: " << *Ty << "\n";
cerr << "Unhandled type for SetLT instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -576,7 +576,7 @@ static GenericValue executeSetGTInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SETCC(>, Double);
IMPLEMENT_POINTERSETCC(>);
default:
llvm_cerr << "Unhandled type for SetGT instruction: " << *Ty << "\n";
cerr << "Unhandled type for SetGT instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -609,7 +609,7 @@ void Interpreter::visitBinaryOperator(BinaryOperator &I) {
case Instruction::SetLT: R = executeSetLTInst(Src1, Src2, Ty); break;
case Instruction::SetGT: R = executeSetGTInst(Src1, Src2, Ty); break;
default:
llvm_cerr << "Don't know how to handle this binary operator!\n-->" << I;
cerr << "Don't know how to handle this binary operator!\n-->" << I;
abort();
}
@ -710,7 +710,7 @@ void Interpreter::visitUnwindInst(UnwindInst &I) {
}
void Interpreter::visitUnreachableInst(UnreachableInst &I) {
llvm_cerr << "ERROR: Program executed an 'unreachable' instruction!\n";
cerr << "ERROR: Program executed an 'unreachable' instruction!\n";
abort();
}
@ -978,7 +978,7 @@ static GenericValue executeShlInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SHIFT(<<, ULong);
IMPLEMENT_SHIFT(<<, Long);
default:
llvm_cerr << "Unhandled type for Shl instruction: " << *Ty << "\n";
cerr << "Unhandled type for Shl instruction: " << *Ty << "\n";
}
return Dest;
}
@ -992,7 +992,7 @@ static GenericValue executeLShrInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SIGNLESS_SHIFT(>>, UInt, Int);
IMPLEMENT_SIGNLESS_SHIFT(>>, ULong, Long);
default:
llvm_cerr << "Unhandled type for LShr instruction: " << *Ty << "\n";
cerr << "Unhandled type for LShr instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -1007,7 +1007,7 @@ static GenericValue executeAShrInst(GenericValue Src1, GenericValue Src2,
IMPLEMENT_SIGNLESS_SHIFT(>>, Int, UInt);
IMPLEMENT_SIGNLESS_SHIFT(>>, Long, ULong);
default:
llvm_cerr << "Unhandled type for AShr instruction: " << *Ty << "\n";
cerr << "Unhandled type for AShr instruction: " << *Ty << "\n";
abort();
}
return Dest;
@ -1065,14 +1065,14 @@ void Interpreter::visitAShr(ShiftInst &I) {
IMPLEMENT_CAST(DESTTY, DESTCTY, Float); \
IMPLEMENT_CAST(DESTTY, DESTCTY, Double) \
default: \
llvm_cerr << "Unhandled cast: " \
cerr << "Unhandled cast: " \
<< *SrcTy << " to " << *DstTy << "\n"; \
abort(); \
} \
break
#define IMPLEMENT_CAST_END \
default: llvm_cerr \
default: cerr \
<< "Unhandled dest type for cast instruction: " \
<< *DstTy << "\n"; \
abort(); \
@ -1226,8 +1226,7 @@ GenericValue Interpreter::executeCastOperation(Instruction::CastOps opcode,
IMPLEMENT_CAST_END
break;
default:
llvm_cerr
<< "Invalid cast opcode for cast instruction: " << opcode << "\n";
cerr << "Invalid cast opcode for cast instruction: " << opcode << "\n";
abort();
}
return Dest;
@ -1266,7 +1265,7 @@ void Interpreter::visitVAArgInst(VAArgInst &I) {
IMPLEMENT_VAARG(Double);
IMPLEMENT_VAARG(Bool);
default:
llvm_cerr << "Unhandled dest type for vaarg instruction: " << *Ty << "\n";
cerr << "Unhandled dest type for vaarg instruction: " << *Ty << "\n";
abort();
}

View File

@ -93,8 +93,8 @@ GenericValue Interpreter::callExternalFunction(Function *F,
std::map<const Function *, ExFunc>::iterator FI = Functions.find(F);
ExFunc Fn = (FI == Functions.end()) ? lookupFunction(F) : FI->second;
if (Fn == 0) {
llvm_cerr << "Tried to execute an unknown external function: "
<< F->getType()->getDescription() << " " << F->getName() << "\n";
cerr << "Tried to execute an unknown external function: "
<< F->getType()->getDescription() << " " << F->getName() << "\n";
if (F->getName() == "__main")
return GenericValue();
abort();
@ -114,19 +114,19 @@ extern "C" { // Don't add C++ manglings to llvm mangling :)
// void putchar(sbyte)
GenericValue lle_Vb_putchar(FunctionType *M, const vector<GenericValue> &Args) {
llvm_cout << Args[0].SByteVal;
cout << Args[0].SByteVal;
return GenericValue();
}
// int putchar(int)
GenericValue lle_ii_putchar(FunctionType *M, const vector<GenericValue> &Args) {
llvm_cout << ((char)Args[0].IntVal) << std::flush;
cout << ((char)Args[0].IntVal) << std::flush;
return Args[0];
}
// void putchar(ubyte)
GenericValue lle_VB_putchar(FunctionType *M, const vector<GenericValue> &Args) {
llvm_cout << Args[0].SByteVal << std::flush;
cout << Args[0].SByteVal << std::flush;
return Args[0];
}
@ -332,7 +332,7 @@ GenericValue lle_X_sprintf(FunctionType *M, const vector<GenericValue> &Args) {
sprintf(Buffer, FmtBuf, (void*)GVTOP(Args[ArgNo++])); break;
case 's':
sprintf(Buffer, FmtBuf, (char*)GVTOP(Args[ArgNo++])); break;
default: llvm_cerr << "<unknown printf code '" << *FmtStr << "'!>";
default: cerr << "<unknown printf code '" << *FmtStr << "'!>";
ArgNo++; break;
}
strcpy(OutputBuffer, Buffer);
@ -350,7 +350,7 @@ GenericValue lle_X_printf(FunctionType *M, const vector<GenericValue> &Args) {
NewArgs.push_back(PTOGV(Buffer));
NewArgs.insert(NewArgs.end(), Args.begin(), Args.end());
GenericValue GV = lle_X_sprintf(M, NewArgs);
llvm_cout << Buffer;
cout << Buffer;
return GV;
}

View File

@ -25,7 +25,6 @@
#include "llvm/Assembly/Writer.h"
#include "llvm/Support/Streams.h"
#include "llvm/System/Path.h"
#include <sstream>
using namespace llvm;
// Error - Simple wrapper function to conditionally assign to E and return true.
@ -251,11 +250,11 @@ static bool LinkTypes(Module *Dest, const Module *Src, std::string *Err) {
static void PrintMap(const std::map<const Value*, Value*> &M) {
for (std::map<const Value*, Value*>::const_iterator I = M.begin(), E =M.end();
I != E; ++I) {
llvm_cerr << " Fr: " << (void*)I->first << " ";
cerr << " Fr: " << (void*)I->first << " ";
I->first->dump();
llvm_cerr << " To: " << (void*)I->second << " ";
cerr << " To: " << (void*)I->second << " ";
I->second->dump();
llvm_cerr << "\n";
cerr << "\n";
}
}
@ -313,10 +312,10 @@ static Value *RemapOperand(const Value *In,
}
llvm_cerr << "LinkModules ValueMap: \n";
cerr << "LinkModules ValueMap: \n";
PrintMap(ValueMap);
llvm_cerr << "Couldn't remap value: " << (void*)In << " " << *In << "\n";
cerr << "Couldn't remap value: " << (void*)In << " " << *In << "\n";
assert(0 && "Couldn't remap value!");
return 0;
}
@ -844,13 +843,13 @@ Linker::LinkModules(Module *Dest, Module *Src, std::string *ErrorMsg) {
if (Src->getEndianness() != Module::AnyEndianness &&
Dest->getEndianness() != Src->getEndianness())
llvm_cerr << "WARNING: Linking two modules of different endianness!\n";
cerr << "WARNING: Linking two modules of different endianness!\n";
if (Src->getPointerSize() != Module::AnyPointerSize &&
Dest->getPointerSize() != Src->getPointerSize())
llvm_cerr << "WARNING: Linking two modules of different pointer size!\n";
cerr << "WARNING: Linking two modules of different pointer size!\n";
if (!Src->getTargetTriple().empty() &&
Dest->getTargetTriple() != Src->getTargetTriple())
llvm_cerr << "WARNING: Linking two modules of different target triples!\n";
cerr << "WARNING: Linking two modules of different target triples!\n";
if (!Src->getModuleInlineAsm().empty()) {
if (Dest->getModuleInlineAsm().empty())

View File

@ -45,7 +45,7 @@ bool
Linker::error(const std::string& message) {
Error = message;
if (!(Flags&QuietErrors))
llvm_cerr << ProgramName << ": error: " << message << "\n";
cerr << ProgramName << ": error: " << message << "\n";
return true;
}
@ -53,14 +53,14 @@ bool
Linker::warning(const std::string& message) {
Error = message;
if (!(Flags&QuietErrors))
llvm_cerr << ProgramName << ": warning: " << message << "\n";
cerr << ProgramName << ": warning: " << message << "\n";
return false;
}
void
Linker::verbose(const std::string& message) {
if (Flags&Verbose)
llvm_cerr << " " << message << "\n";
cerr << " " << message << "\n";
}
void

View File

@ -102,6 +102,6 @@ void BumpPtrAllocator::PrintStats() const {
for (; R; R = R->getNext(), ++NumRegions)
BytesUsed += R->getNumBytesAllocated();
llvm_cerr << "\nNumber of memory regions: " << NumRegions << "\n";
llvm_cerr << "Bytes allocated: " << BytesUsed << "\n";
cerr << "\nNumber of memory regions: " << NumRegions << "\n";
cerr << "Bytes allocated: " << BytesUsed << "\n";
}

View File

@ -84,8 +84,8 @@ static Option *getOption(const std::string &Str) {
static void AddArgument(const char *ArgName, Option *Opt) {
if (getOption(ArgName)) {
llvm_cerr << ProgramName << ": CommandLine Error: Argument '"
<< ArgName << "' defined more than once!\n";
cerr << ProgramName << ": CommandLine Error: Argument '"
<< ArgName << "' defined more than once!\n";
} else {
// Add argument to the argument map!
(*Options)[ArgName] = Opt;
@ -129,9 +129,9 @@ static inline bool ProvideOption(Option *Handler, const char *ArgName,
case ValueOptional:
break;
default:
llvm_cerr << ProgramName
<< ": Bad ValueMask flag! CommandLine usage error:"
<< Handler->getValueExpectedFlag() << "\n";
cerr << ProgramName
<< ": Bad ValueMask flag! CommandLine usage error:"
<< Handler->getValueExpectedFlag() << "\n";
abort();
break;
}
@ -468,8 +468,8 @@ void cl::ParseCommandLineOptions(int &argc, char **argv,
}
if (Handler == 0) {
llvm_cerr << ProgramName << ": Unknown command line argument '"
<< argv[i] << "'. Try: '" << argv[0] << " --help'\n";
cerr << ProgramName << ": Unknown command line argument '"
<< argv[i] << "'. Try: '" << argv[0] << " --help'\n";
ErrorParsing = true;
continue;
}
@ -505,18 +505,18 @@ void cl::ParseCommandLineOptions(int &argc, char **argv,
// Check and handle positional arguments now...
if (NumPositionalRequired > PositionalVals.size()) {
llvm_cerr << ProgramName
<< ": Not enough positional command line arguments specified!\n"
<< "Must specify at least " << NumPositionalRequired
<< " positional arguments: See: " << argv[0] << " --help\n";
cerr << ProgramName
<< ": Not enough positional command line arguments specified!\n"
<< "Must specify at least " << NumPositionalRequired
<< " positional arguments: See: " << argv[0] << " --help\n";
ErrorParsing = true;
} else if (!HasUnlimitedPositionals
&& PositionalVals.size() > PositionalOpts.size()) {
llvm_cerr << ProgramName
<< ": Too many positional arguments specified!\n"
<< "Can specify at most " << PositionalOpts.size()
<< " positional arguments: See: " << argv[0] << " --help\n";
cerr << ProgramName
<< ": Too many positional arguments specified!\n"
<< "Can specify at most " << PositionalOpts.size()
<< " positional arguments: See: " << argv[0] << " --help\n";
ErrorParsing = true;
} else if (ConsumeAfterOpt == 0) {
@ -617,11 +617,11 @@ void cl::ParseCommandLineOptions(int &argc, char **argv,
bool Option::error(std::string Message, const char *ArgName) {
if (ArgName == 0) ArgName = ArgStr;
if (ArgName[0] == 0)
llvm_cerr << HelpStr; // Be nice for positional arguments
cerr << HelpStr; // Be nice for positional arguments
else
llvm_cerr << ProgramName << ": for the -" << ArgName;
cerr << ProgramName << ": for the -" << ArgName;
llvm_cerr << " option: " << Message << "\n";
cerr << " option: " << Message << "\n";
return true;
}
@ -701,8 +701,8 @@ unsigned alias::getOptionWidth() const {
// Print out the option for the alias.
void alias::printOptionInfo(unsigned GlobalWidth) const {
unsigned L = std::strlen(ArgStr);
llvm_cout << " -" << ArgStr << std::string(GlobalWidth-L-6, ' ') << " - "
<< HelpStr << "\n";
cout << " -" << ArgStr << std::string(GlobalWidth-L-6, ' ') << " - "
<< HelpStr << "\n";
}
@ -728,13 +728,13 @@ unsigned basic_parser_impl::getOptionWidth(const Option &O) const {
//
void basic_parser_impl::printOptionInfo(const Option &O,
unsigned GlobalWidth) const {
llvm_cout << " -" << O.ArgStr;
cout << " -" << O.ArgStr;
if (const char *ValName = getValueName())
llvm_cout << "=<" << getValueStr(O, ValName) << ">";
cout << "=<" << getValueStr(O, ValName) << ">";
llvm_cout << std::string(GlobalWidth-getOptionWidth(O), ' ') << " - "
<< O.HelpStr << "\n";
cout << std::string(GlobalWidth-getOptionWidth(O), ' ') << " - "
<< O.HelpStr << "\n";
}
@ -850,21 +850,21 @@ void generic_parser_base::printOptionInfo(const Option &O,
unsigned GlobalWidth) const {
if (O.hasArgStr()) {
unsigned L = std::strlen(O.ArgStr);
llvm_cout << " -" << O.ArgStr << std::string(GlobalWidth-L-6, ' ')
<< " - " << O.HelpStr << "\n";
cout << " -" << O.ArgStr << std::string(GlobalWidth-L-6, ' ')
<< " - " << O.HelpStr << "\n";
for (unsigned i = 0, e = getNumOptions(); i != e; ++i) {
unsigned NumSpaces = GlobalWidth-strlen(getOption(i))-8;
llvm_cout << " =" << getOption(i) << std::string(NumSpaces, ' ')
<< " - " << getDescription(i) << "\n";
cout << " =" << getOption(i) << std::string(NumSpaces, ' ')
<< " - " << getDescription(i) << "\n";
}
} else {
if (O.HelpStr[0])
llvm_cout << " " << O.HelpStr << "\n";
cout << " " << O.HelpStr << "\n";
for (unsigned i = 0, e = getNumOptions(); i != e; ++i) {
unsigned L = std::strlen(getOption(i));
llvm_cout << " -" << getOption(i) << std::string(GlobalWidth-L-8, ' ')
<< " - " << getDescription(i) << "\n";
cout << " -" << getOption(i) << std::string(GlobalWidth-L-8, ' ')
<< " - " << getDescription(i) << "\n";
}
}
}
@ -917,9 +917,9 @@ public:
}
if (ProgramOverview)
llvm_cout << "OVERVIEW:" << ProgramOverview << "\n";
cout << "OVERVIEW:" << ProgramOverview << "\n";
llvm_cout << "USAGE: " << ProgramName << " [options]";
cout << "USAGE: " << ProgramName << " [options]";
// Print out the positional options.
std::vector<Option*> &PosOpts = *PositionalOptions;
@ -929,28 +929,28 @@ public:
for (unsigned i = CAOpt != 0, e = PosOpts.size(); i != e; ++i) {
if (PosOpts[i]->ArgStr[0])
llvm_cout << " --" << PosOpts[i]->ArgStr;
llvm_cout << " " << PosOpts[i]->HelpStr;
cout << " --" << PosOpts[i]->ArgStr;
cout << " " << PosOpts[i]->HelpStr;
}
// Print the consume after option info if it exists...
if (CAOpt) llvm_cout << " " << CAOpt->HelpStr;
if (CAOpt) cout << " " << CAOpt->HelpStr;
llvm_cout << "\n\n";
cout << "\n\n";
// Compute the maximum argument length...
MaxArgLen = 0;
for (unsigned i = 0, e = Opts.size(); i != e; ++i)
MaxArgLen = std::max(MaxArgLen, Opts[i].second->getOptionWidth());
llvm_cout << "OPTIONS:\n";
cout << "OPTIONS:\n";
for (unsigned i = 0, e = Opts.size(); i != e; ++i)
Opts[i].second->printOptionInfo(MaxArgLen);
// Print any extra help the user has declared.
for (std::vector<const char *>::iterator I = MoreHelp->begin(),
E = MoreHelp->end(); I != E; ++I)
llvm_cout << *I;
cout << *I;
MoreHelp->clear();
// Halt the program since help information was printed
@ -982,21 +982,21 @@ public:
void operator=(bool OptionWasSpecified) {
if (OptionWasSpecified) {
if (OverrideVersionPrinter == 0) {
llvm_cout << "Low Level Virtual Machine (http://llvm.org/):\n";
llvm_cout << " " << PACKAGE_NAME << " version " << PACKAGE_VERSION;
cout << "Low Level Virtual Machine (http://llvm.org/):\n";
cout << " " << PACKAGE_NAME << " version " << PACKAGE_VERSION;
#ifdef LLVM_VERSION_INFO
llvm_cout << LLVM_VERSION_INFO;
cout << LLVM_VERSION_INFO;
#endif
llvm_cout << "\n ";
cout << "\n ";
#ifndef __OPTIMIZE__
llvm_cout << "DEBUG build";
cout << "DEBUG build";
#else
llvm_cout << "Optimized build";
cout << "Optimized build";
#endif
#ifndef NDEBUG
llvm_cout << " with assertions";
cout << " with assertions";
#endif
llvm_cout << ".\n";
cout << ".\n";
Options->clear(); // Don't bother making option dtors remove from map.
exit(1);
} else {

View File

@ -68,9 +68,9 @@ bool llvm::isCurrentDebugType(const char *DebugType) {
// places the std::c* I/O streams into one .cpp file and relieves the whole
// program from having to have hundreds of static c'tor/d'tors for them.
//
llvm_ostream llvm::getErrorOutputStream(const char *DebugType) {
OStream llvm::getErrorOutputStream(const char *DebugType) {
if (DebugFlag && isCurrentDebugType(DebugType))
return llvm_cerr;
return cerr;
else
return llvm_null;
return NullStream;
}

View File

@ -28,9 +28,9 @@ void llvm::DisplayGraph(const sys::Path &Filename) {
args.push_back(Filename.c_str());
args.push_back(0);
llvm_cerr << "Running 'Graphviz' program... " << std::flush;
cerr << "Running 'Graphviz' program... " << std::flush;
if (sys::Program::ExecuteAndWait(Graphviz, &args[0],0,0,0,&ErrMsg)) {
llvm_cerr << "Error viewing graph: " << ErrMsg << "\n";
cerr << "Error viewing graph: " << ErrMsg << "\n";
}
#elif (HAVE_GV && HAVE_DOT)
sys::Path PSFilename = Filename;
@ -48,11 +48,11 @@ void llvm::DisplayGraph(const sys::Path &Filename) {
args.push_back(PSFilename.c_str());
args.push_back(0);
llvm_cerr << "Running 'dot' program... " << std::flush;
cerr << "Running 'dot' program... " << std::flush;
if (sys::Program::ExecuteAndWait(dot, &args[0],0,0,0,&ErrMsg)) {
llvm_cerr << "Error viewing graph: '" << ErrMsg << "\n";
cerr << "Error viewing graph: '" << ErrMsg << "\n";
} else {
llvm_cerr << " done. \n";
cerr << " done. \n";
sys::Path gv(LLVM_PATH_GV);
args.clear();
@ -62,7 +62,7 @@ void llvm::DisplayGraph(const sys::Path &Filename) {
ErrMsg.clear();
if (sys::Program::ExecuteAndWait(gv, &args[0],0,0,0,&ErrMsg)) {
llvm_cerr << "Error viewing graph: " << ErrMsg << "\n";
cerr << "Error viewing graph: " << ErrMsg << "\n";
}
}
PSFilename.eraseFromDisk();
@ -73,9 +73,9 @@ void llvm::DisplayGraph(const sys::Path &Filename) {
args.push_back(Filename.c_str());
args.push_back(0);
llvm_cerr << "Running 'dotty' program... " << std::flush;
cerr << "Running 'dotty' program... " << std::flush;
if (sys::Program::ExecuteAndWait(dotty, &args[0],0,0,0,&ErrMsg)) {
llvm_cerr << "Error viewing graph: " << ErrMsg << "\n";
cerr << "Error viewing graph: " << ErrMsg << "\n";
} else {
#ifdef __MINGW32__ // Dotty spawns another app and doesn't wait until it returns
return;

View File

@ -26,8 +26,8 @@ void PluginLoader::operator=(const std::string &Filename) {
std::string Error;
if (sys::DynamicLibrary::LoadLibraryPermanently(Filename.c_str(), &Error)) {
llvm_cerr << "Error opening '" << Filename << "': " << Error
<< "\n -load request ignored.\n";
cerr << "Error opening '" << Filename << "': " << Error
<< "\n -load request ignored.\n";
} else {
Plugins->push_back(Filename);
}

View File

@ -28,8 +28,8 @@ SlowOperationInformer::~SlowOperationInformer() {
if (LastPrintAmount) {
// If we have printed something, make _sure_ we print the 100% amount, and
// also print a newline.
llvm_cout << std::string(LastPrintAmount, '\b') << "Progress "
<< OperationName << ": 100% \n";
cout << std::string(LastPrintAmount, '\b') << "Progress "
<< OperationName << ": 100% \n";
}
}
@ -40,7 +40,7 @@ SlowOperationInformer::~SlowOperationInformer() {
bool SlowOperationInformer::progress(unsigned Amount) {
int status = sys::AlarmStatus();
if (status == -1) {
llvm_cout << "\n";
cout << "\n";
LastPrintAmount = 0;
return true;
}
@ -61,6 +61,6 @@ bool SlowOperationInformer::progress(unsigned Amount) {
OS << "% ";
LastPrintAmount = OS.str().size();
llvm_cout << ToPrint+OS.str() << std::flush;
cout << ToPrint+OS.str() << std::flush;
return false;
}

View File

@ -16,6 +16,7 @@
#include <iostream>
using namespace llvm;
llvm_ostream llvm::llvm_null;
llvm_ostream llvm::llvm_cout(std::cout);
llvm_ostream llvm::llvm_cerr(std::cerr);
OStream llvm::NullStream;
OStream llvm::cout(std::cout);
OStream llvm::cerr(std::cerr);
IStream llvm::cin(std::cin);

View File

@ -23,10 +23,10 @@ bool llvm::CheckBytecodeOutputToConsole(std::ostream* stream_to_check,
bool print_warning) {
if (stream_to_check == &std::cout && sys::Process::StandardOutIsDisplayed()) {
if (print_warning) {
llvm_cerr << "WARNING: You're attempting to print out a bytecode file.\n"
<< "This is inadvisable as it may cause display problems. If\n"
<< "you REALLY want to taste LLVM bytecode first-hand, you\n"
<< "can force output with the `-f' option.\n\n";
cerr << "WARNING: You're attempting to print out a bytecode file.\n"
<< "This is inadvisable as it may cause display problems. If\n"
<< "you REALLY want to taste LLVM bytecode first-hand, you\n"
<< "can force output with the `-f' option.\n\n";
}
return true;
}

View File

@ -693,8 +693,8 @@ static void ConvertOperandToType(User *U, Value *OldVal, Value *NewVal,
I->setName("");
Instruction *Res; // Result of conversion
//llvm_cerr << endl << endl << "Type:\t" << Ty << "\nInst: " << I
// << "BB Before: " << BB << endl;
//cerr << endl << endl << "Type:\t" << Ty << "\nInst: " << I
// << "BB Before: " << BB << endl;
// Prevent I from being removed...
ValueHandle IHandle(VMC, I);

View File

@ -30,7 +30,7 @@ namespace {
HelloCounter++;
std::string fname = F.getName();
EscapeString(fname);
llvm_cerr << "Hello: " << fname << "\n";
cerr << "Hello: " << fname << "\n";
return false;
}
};
@ -43,7 +43,7 @@ namespace {
HelloCounter++;
std::string fname = F.getName();
EscapeString(fname);
llvm_cerr << "Hello: " << fname << "\n";
cerr << "Hello: " << fname << "\n";
return false;
}

View File

@ -494,17 +494,17 @@ static bool AllUsesOfValueWillTrapIfNull(Value *V) {
// Will trap.
} else if (StoreInst *SI = dyn_cast<StoreInst>(*UI)) {
if (SI->getOperand(0) == V) {
//llvm_cerr << "NONTRAPPING USE: " << **UI;
//cerr << "NONTRAPPING USE: " << **UI;
return false; // Storing the value.
}
} else if (CallInst *CI = dyn_cast<CallInst>(*UI)) {
if (CI->getOperand(0) != V) {
//llvm_cerr << "NONTRAPPING USE: " << **UI;
//cerr << "NONTRAPPING USE: " << **UI;
return false; // Not calling the ptr
}
} else if (InvokeInst *II = dyn_cast<InvokeInst>(*UI)) {
if (II->getOperand(0) != V) {
//llvm_cerr << "NONTRAPPING USE: " << **UI;
//cerr << "NONTRAPPING USE: " << **UI;
return false; // Not calling the ptr
}
} else if (CastInst *CI = dyn_cast<CastInst>(*UI)) {
@ -515,7 +515,7 @@ static bool AllUsesOfValueWillTrapIfNull(Value *V) {
isa<ConstantPointerNull>(UI->getOperand(1))) {
// Ignore setcc X, null
} else {
//llvm_cerr << "NONTRAPPING USE: " << **UI;
//cerr << "NONTRAPPING USE: " << **UI;
return false;
}
return true;
@ -533,7 +533,7 @@ static bool AllUsesOfLoadedValueWillTrapIfNull(GlobalVariable *GV) {
// Ignore stores to the global.
} else {
// We don't know or understand this user, bail out.
//llvm_cerr << "UNKNOWN USER OF GLOBAL!: " << **UI;
//cerr << "UNKNOWN USER OF GLOBAL!: " << **UI;
return false;
}
@ -1206,25 +1206,25 @@ bool GlobalOpt::ProcessInternalGlobal(GlobalVariable *GV,
if (!AnalyzeGlobal(GV, GS, PHIUsers)) {
#if 0
llvm_cerr << "Global: " << *GV;
llvm_cerr << " isLoaded = " << GS.isLoaded << "\n";
llvm_cerr << " StoredType = ";
cerr << "Global: " << *GV;
cerr << " isLoaded = " << GS.isLoaded << "\n";
cerr << " StoredType = ";
switch (GS.StoredType) {
case GlobalStatus::NotStored: llvm_cerr << "NEVER STORED\n"; break;
case GlobalStatus::isInitializerStored: llvm_cerr << "INIT STORED\n"; break;
case GlobalStatus::isStoredOnce: llvm_cerr << "STORED ONCE\n"; break;
case GlobalStatus::isStored: llvm_cerr << "stored\n"; break;
case GlobalStatus::NotStored: cerr << "NEVER STORED\n"; break;
case GlobalStatus::isInitializerStored: cerr << "INIT STORED\n"; break;
case GlobalStatus::isStoredOnce: cerr << "STORED ONCE\n"; break;
case GlobalStatus::isStored: cerr << "stored\n"; break;
}
if (GS.StoredType == GlobalStatus::isStoredOnce && GS.StoredOnceValue)
llvm_cerr << " StoredOnceValue = " << *GS.StoredOnceValue << "\n";
cerr << " StoredOnceValue = " << *GS.StoredOnceValue << "\n";
if (GS.AccessingFunction && !GS.HasMultipleAccessingFunctions)
llvm_cerr << " AccessingFunction = " << GS.AccessingFunction->getName()
cerr << " AccessingFunction = " << GS.AccessingFunction->getName()
<< "\n";
llvm_cerr << " HasMultipleAccessingFunctions = "
cerr << " HasMultipleAccessingFunctions = "
<< GS.HasMultipleAccessingFunctions << "\n";
llvm_cerr << " HasNonInstructionUser = " << GS.HasNonInstructionUser<<"\n";
llvm_cerr << " isNotSuitableForSRA = " << GS.isNotSuitableForSRA << "\n";
llvm_cerr << "\n";
cerr << " HasNonInstructionUser = " << GS.HasNonInstructionUser<<"\n";
cerr << " isNotSuitableForSRA = " << GS.isNotSuitableForSRA << "\n";
cerr << "\n";
#endif
// If this is a first class global and has only one accessing function

View File

@ -74,8 +74,7 @@ void InternalizePass::LoadFile(const char *Filename) {
// Load the APIFile...
std::ifstream In(Filename);
if (!In.good()) {
llvm_cerr << "WARNING: Internalize couldn't load file '" << Filename
<< "'!\n";
cerr << "WARNING: Internalize couldn't load file '" << Filename << "'!\n";
return; // Do not internalize anything...
}
while (In) {

View File

@ -47,8 +47,8 @@ ModulePass *llvm::createFunctionProfilerPass() {
bool FunctionProfiler::runOnModule(Module &M) {
Function *Main = M.getMainFunction();
if (Main == 0) {
llvm_cerr << "WARNING: cannot insert function profiling into a module"
<< " with no main function!\n";
cerr << "WARNING: cannot insert function profiling into a module"
<< " with no main function!\n";
return false; // No main, no instrumentation!
}
@ -90,8 +90,8 @@ ModulePass *llvm::createBlockProfilerPass() { return new BlockProfiler(); }
bool BlockProfiler::runOnModule(Module &M) {
Function *Main = M.getMainFunction();
if (Main == 0) {
llvm_cerr << "WARNING: cannot insert block profiling into a module"
<< " with no main function!\n";
cerr << "WARNING: cannot insert block profiling into a module"
<< " with no main function!\n";
return false; // No main, no instrumentation!
}

View File

@ -17,6 +17,7 @@
//
//===----------------------------------------------------------------------===//
#include "ProfilingUtils.h"
#include "llvm/Constants.h"
#include "llvm/DerivedTypes.h"
#include "llvm/Module.h"
@ -24,7 +25,6 @@
#include "llvm/Support/Streams.h"
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
#include "llvm/Transforms/Instrumentation.h"
#include "ProfilingUtils.h"
#include <set>
using namespace llvm;
@ -42,8 +42,8 @@ ModulePass *llvm::createEdgeProfilerPass() { return new EdgeProfiler(); }
bool EdgeProfiler::runOnModule(Module &M) {
Function *Main = M.getMainFunction();
if (Main == 0) {
llvm_cerr << "WARNING: cannot insert edge profiling into a module"
<< " with no main function!\n";
cerr << "WARNING: cannot insert edge profiling into a module"
<< " with no main function!\n";
return false; // No main, no instrumentation!
}

View File

@ -13,6 +13,7 @@
//
//===----------------------------------------------------------------------===//
#include "ProfilingUtils.h"
#include "llvm/Constants.h"
#include "llvm/DerivedTypes.h"
#include "llvm/Module.h"
@ -20,7 +21,6 @@
#include "llvm/Transforms/Utils/BasicBlockUtils.h"
#include "llvm/Transforms/Instrumentation.h"
#include "llvm/Instructions.h"
#include "ProfilingUtils.h"
#include "llvm/Support/Debug.h"
#include <set>
using namespace llvm;
@ -61,8 +61,8 @@ static void InsertInstrumentationCall (BasicBlock *BB,
bool TraceBasicBlocks::runOnModule(Module &M) {
Function *Main = M.getMainFunction();
if (Main == 0) {
llvm_cerr << "WARNING: cannot insert basic-block trace instrumentation"
<< " into a module with no main function!\n";
cerr << "WARNING: cannot insert basic-block trace instrumentation"
<< " into a module with no main function!\n";
return false; // No main, no instrumentation!
}

View File

@ -7018,8 +7018,8 @@ bool InstCombiner::transformConstExprCastCall(CallSite CS) {
// If we are removing arguments to the function, emit an obnoxious warning...
if (FT->getNumParams() < NumActualArgs)
if (!FT->isVarArg()) {
llvm_cerr << "WARNING: While resolving call to function '"
<< Callee->getName() << "' arguments were dropped!\n";
cerr << "WARNING: While resolving call to function '"
<< Callee->getName() << "' arguments were dropped!\n";
} else {
// Add all of the arguments in their promoted form to the arg list...
for (unsigned i = FT->getNumParams(); i != NumActualArgs; ++i, ++AI) {

View File

@ -507,12 +507,12 @@ namespace {
}
void BasedUser::dump() const {
llvm_cerr << " Base=" << *Base;
llvm_cerr << " Imm=" << *Imm;
cerr << " Base=" << *Base;
cerr << " Imm=" << *Imm;
if (EmittedBase)
llvm_cerr << " EB=" << *EmittedBase;
cerr << " EB=" << *EmittedBase;
llvm_cerr << " Inst: " << *Inst;
cerr << " Inst: " << *Inst;
}
Value *BasedUser::InsertCodeForBaseAtPosition(const SCEVHandle &NewBase,

View File

@ -73,8 +73,7 @@ public:
/// @param I the unhandled instruction
void visitInstruction(Instruction &I) {
if (isa<PackedType>(I.getType()))
llvm_cerr << "Unhandled Instruction with Packed ReturnType: "
<< I << '\n';
cerr << "Unhandled Instruction with Packed ReturnType: " << I << '\n';
}
private:
/// @brief Retrieves lowered values for a packed value.

View File

@ -350,7 +350,7 @@ private:
void visitInstruction(Instruction &I) {
// If a new instruction is added to LLVM that we don't handle...
llvm_cerr << "SCCP: Don't know how to handle: " << I;
cerr << "SCCP: Don't know how to handle: " << I;
markOverdefined(&I); // Just in case
}
};
@ -400,7 +400,7 @@ void SCCPSolver::getFeasibleSuccessors(TerminatorInst &TI,
Succs[0] = true;
}
} else {
llvm_cerr << "SCCP: Don't know how to handle: " << TI;
cerr << "SCCP: Don't know how to handle: " << TI;
Succs.assign(TI.getNumSuccessors(), true);
}
}
@ -459,7 +459,7 @@ bool SCCPSolver::isEdgeFeasible(BasicBlock *From, BasicBlock *To) {
}
return false;
} else {
llvm_cerr << "Unknown terminator instruction: " << *TI;
cerr << "Unknown terminator instruction: " << *TI;
abort();
}
}

View File

@ -699,10 +699,10 @@ ExtractCodeRegion(const std::vector<BasicBlock*> &code) {
}
}
//llvm_cerr << "NEW FUNCTION: " << *newFunction;
//cerr << "NEW FUNCTION: " << *newFunction;
// verifyFunction(*newFunction);
// llvm_cerr << "OLD FUNCTION: " << *oldFunction;
// cerr << "OLD FUNCTION: " << *oldFunction;
// verifyFunction(*oldFunction);
DEBUG(if (verifyFunction(*newFunction)) abort());

View File

@ -96,8 +96,7 @@ bool LowerSwitch::runOnFunction(Function &F) {
// operator<< - Used for debugging purposes.
//
llvm_ostream& operator<<(llvm_ostream &O,
const std::vector<LowerSwitch::Case> &C) {
OStream& operator<<(OStream &O, const std::vector<LowerSwitch::Case> &C) {
O << "[";
for (std::vector<LowerSwitch::Case>::const_iterator B = C.begin(),

View File

@ -829,7 +829,7 @@ void AssemblyWriter::printGlobal(const GlobalVariable *GV) {
case GlobalValue::ExternalWeakLinkage: Out << "extern_weak "; break;
case GlobalValue::ExternalLinkage: break;
case GlobalValue::GhostLinkage:
llvm_cerr << "GhostLinkage not allowed in AsmWriter!\n";
cerr << "GhostLinkage not allowed in AsmWriter!\n";
abort();
}
@ -928,7 +928,7 @@ void AssemblyWriter::printFunction(const Function *F) {
case GlobalValue::ExternalWeakLinkage: Out << "extern_weak "; break;
case GlobalValue::ExternalLinkage: break;
case GlobalValue::GhostLinkage:
llvm_cerr << "GhostLinkage not allowed in AsmWriter!\n";
cerr << "GhostLinkage not allowed in AsmWriter!\n";
abort();
}
@ -1328,18 +1328,18 @@ void Argument::print(std::ostream &o) const {
// Value::dump - allow easy printing of Values from the debugger.
// Located here because so much of the needed functionality is here.
void Value::dump() const { print(std::cerr); llvm_cerr << '\n'; }
void Value::dump() const { print(std::cerr); cerr << '\n'; }
// Type::dump - allow easy printing of Values from the debugger.
// Located here because so much of the needed functionality is here.
void Type::dump() const { print(std::cerr); llvm_cerr << '\n'; }
void Type::dump() const { print(std::cerr); cerr << '\n'; }
//===----------------------------------------------------------------------===//
// SlotMachine Implementation
//===----------------------------------------------------------------------===//
#if 0
#define SC_DEBUG(X) llvm_cerr << X
#define SC_DEBUG(X) cerr << X
#else
#define SC_DEBUG(X)
#endif

View File

@ -11,8 +11,8 @@
//
//===----------------------------------------------------------------------===//
#include "llvm/Support/Compiler.h"
#include "llvm/Support/LeakDetector.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/Streams.h"
#include "llvm/Value.h"
#include <set>
@ -21,12 +21,12 @@ using namespace llvm;
namespace {
template <class T>
struct VISIBILITY_HIDDEN PrinterTrait {
static void print(const T* P) { llvm_cerr << P; }
static void print(const T* P) { cerr << P; }
};
template<>
struct VISIBILITY_HIDDEN PrinterTrait<Value> {
static void print(const Value* P) { llvm_cerr << *P; }
static void print(const Value* P) { cerr << *P; }
};
template <typename T>
@ -59,15 +59,14 @@ namespace {
assert(Cache == 0 && "No value should be cached anymore!");
if (!Ts.empty()) {
llvm_cerr
<< "Leaked " << Name << " objects found: " << Message << ":\n";
cerr << "Leaked " << Name << " objects found: " << Message << ":\n";
for (typename std::set<const T*>::iterator I = Ts.begin(),
E = Ts.end(); I != E; ++I) {
llvm_cerr << "\t";
cerr << "\t";
PrinterTrait<T>::print(*I);
llvm_cerr << "\n";
cerr << "\n";
}
llvm_cerr << '\n';
cerr << '\n';
return true;
}
@ -123,8 +122,8 @@ void LeakDetector::checkForGarbageImpl(const std::string &Message) {
// use non-short-circuit version so that both checks are performed
if (getObjects().hasGarbage(Message) |
getLLVMObjects().hasGarbage(Message))
llvm_cerr << "\nThis is probably because you removed an object, but didn't "
<< "delete it. Please check your code for memory leaks.\n";
cerr << "\nThis is probably because you removed an object, but didn't "
<< "delete it. Please check your code for memory leaks.\n";
// Clear out results so we don't get duplicate warnings on
// next call...

View File

@ -442,7 +442,7 @@ bool FunctionPassManager_New::runOnModule(Module &M) {
bool FunctionPassManager_New::run(Function &F) {
std::string errstr;
if (MP->materializeFunction(&F, &errstr)) {
llvm_cerr << "Error reading bytecode file: " << errstr << "\n";
cerr << "Error reading bytecode file: " << errstr << "\n";
abort();
}
return FPM->runOnFunction(F);

View File

@ -66,7 +66,7 @@ Type* TypeSymbolTable::erase(iterator Entry) {
#if DEBUG_SYMBOL_TABLE
dump();
llvm_cerr << " Removing Value: " << Result->getName() << "\n";
cerr << " Removing Value: " << Result->getName() << "\n";
#endif
tmap.erase(Entry);
@ -75,7 +75,7 @@ Type* TypeSymbolTable::erase(iterator Entry) {
// list...
if (Result->isAbstract()) {
#if DEBUG_ABSTYPE
llvm_cerr << "Removing abstract type from symtab" << Result->getDescription()<<"\n";
cerr << "Removing abstract type from symtab" << Result->getDescription()<<"\n";
#endif
cast<DerivedType>(Result)->removeAbstractTypeUser(this);
}
@ -95,8 +95,8 @@ void TypeSymbolTable::insert(const std::string& Name, const Type* T) {
#if DEBUG_SYMBOL_TABLE
dump();
llvm_cerr << " Inserting type: " << UniqueName << ": "
<< T->getDescription() << "\n";
cerr << " Inserting type: " << UniqueName << ": "
<< T->getDescription() << "\n";
#endif
// Insert the tmap entry
@ -106,7 +106,7 @@ void TypeSymbolTable::insert(const std::string& Name, const Type* T) {
if (T->isAbstract()) {
cast<DerivedType>(T)->addAbstractTypeUser(this);
#if DEBUG_ABSTYPE
llvm_cerr << "Added abstract type to ST: " << T->getDescription() << "\n";
cerr << "Added abstract type to ST: " << T->getDescription() << "\n";
#endif
}
}
@ -152,14 +152,14 @@ void TypeSymbolTable::refineAbstractType(const DerivedType *OldType,
for (iterator I = begin(), E = end(); I != E; ++I) {
if (I->second == (Type*)OldType) { // FIXME when Types aren't const.
#if DEBUG_ABSTYPE
llvm_cerr << "Removing type " << OldType->getDescription() << "\n";
cerr << "Removing type " << OldType->getDescription() << "\n";
#endif
OldType->removeAbstractTypeUser(this);
I->second = (Type*)NewType; // TODO FIXME when types aren't const
if (NewType->isAbstract()) {
#if DEBUG_ABSTYPE
llvm_cerr << "Added type " << NewType->getDescription() << "\n";
cerr << "Added type " << NewType->getDescription() << "\n";
#endif
cast<DerivedType>(NewType)->addAbstractTypeUser(this);
}
@ -179,13 +179,13 @@ void TypeSymbolTable::typeBecameConcrete(const DerivedType *AbsTy) {
}
static void DumpTypes(const std::pair<const std::string, const Type*>& T ) {
llvm_cerr << " '" << T.first << "' = ";
cerr << " '" << T.first << "' = ";
T.second->dump();
llvm_cerr << "\n";
cerr << "\n";
}
void TypeSymbolTable::dump() const {
llvm_cerr << "TypeSymbolPlane: ";
cerr << "TypeSymbolPlane: ";
for_each(tmap.begin(), tmap.end(), DumpTypes);
}

View File

@ -60,7 +60,6 @@
#include "llvm/ADT/STLExtras.h"
#include "llvm/Support/Compiler.h"
#include <algorithm>
#include <sstream>
#include <cstdarg>
using namespace llvm;
@ -156,11 +155,11 @@ namespace { // Anonymous namespace for class
switch (action) {
case AbortProcessAction:
msgs << "compilation aborted!\n";
llvm_cerr << msgs.str();
cerr << msgs.str();
abort();
case PrintMessageAction:
msgs << "verification continues.\n";
llvm_cerr << msgs.str();
cerr << msgs.str();
return false;
case ReturnStatusAction:
msgs << "compilation terminated.\n";

View File

@ -115,7 +115,7 @@ int main(int argc, char **argv)
}
if (DumpAsm)
llvm_cerr << "Here's the assembly:" << M.get();
cerr << "Here's the assembly:" << M.get();
if (OutputFilename != "") { // Specified an output filename?
if (OutputFilename != "-") { // Not stdout?
@ -163,15 +163,15 @@ int main(int argc, char **argv)
throw std::string("error opening ") + OutputFilename + "!";
}
llvm_ostream L(*Out);
OStream L(*Out);
WriteBytecodeToFile(M.get(), L);
} catch (const ParseError &E) {
llvm_cerr << argv[0] << ": " << E.getMessage() << "\n";
cerr << argv[0] << ": " << E.getMessage() << "\n";
return 1;
}
}
catch (const std::string& msg ) {
llvm_cerr << argv[0] << ": " << msg << "\n";
cerr << argv[0] << ": " << msg << "\n";
return 1;
}

View File

@ -56,7 +56,7 @@ bool BugDriver::writeProgramToFile(const std::string &Filename,
std::ofstream Out(Filename.c_str(), io_mode);
if (!Out.good()) return true;
try {
llvm_ostream L(Out);
OStream L(Out);
WriteBytecodeToFile(M ? M : Program, L, /*compression=*/true);
} catch (...) {
return true;
@ -74,15 +74,15 @@ void BugDriver::EmitProgressBytecode(const std::string &ID, bool NoFlyer) {
//
std::string Filename = "bugpoint-" + ID + ".bc";
if (writeProgramToFile(Filename)) {
llvm_cerr << "Error opening file '" << Filename << "' for writing!\n";
cerr << "Error opening file '" << Filename << "' for writing!\n";
return;
}
llvm_cout << "Emitted bytecode to '" << Filename << "'\n";
cout << "Emitted bytecode to '" << Filename << "'\n";
if (NoFlyer || PassesToRun.empty()) return;
llvm_cout << "\n*** You can reproduce the problem with: ";
llvm_cout << "opt " << Filename << " ";
llvm_cout << getPassesString(PassesToRun) << "\n";
cout << "\n*** You can reproduce the problem with: ";
cout << "opt " << Filename << " ";
cout << getPassesString(PassesToRun) << "\n";
}
int BugDriver::runPassesAsChild(const std::vector<const PassInfo*> &Passes) {
@ -91,7 +91,7 @@ int BugDriver::runPassesAsChild(const std::vector<const PassInfo*> &Passes) {
std::ios::binary;
std::ofstream OutFile(ChildOutput.c_str(), io_mode);
if (!OutFile.good()) {
llvm_cerr << "Error opening bytecode file: " << ChildOutput << "\n";
cerr << "Error opening bytecode file: " << ChildOutput << "\n";
return 1;
}
@ -103,14 +103,13 @@ int BugDriver::runPassesAsChild(const std::vector<const PassInfo*> &Passes) {
if (Passes[i]->getNormalCtor())
PM.add(Passes[i]->getNormalCtor()());
else
llvm_cerr << "Cannot create pass yet: " << Passes[i]->getPassName()
<< "\n";
cerr << "Cannot create pass yet: " << Passes[i]->getPassName() << "\n";
}
// Check that the module is well formed on completion of optimization
PM.add(createVerifierPass());
// Write bytecode out to disk as the last step...
llvm_ostream L(OutFile);
OStream L(OutFile);
PM.add(new WriteBytecodePass(&L));
// Run all queued passes.
@ -131,12 +130,12 @@ bool BugDriver::runPasses(const std::vector<const PassInfo*> &Passes,
std::string &OutputFilename, bool DeleteOutput,
bool Quiet) const {
// setup the output file name
llvm_cout << std::flush;
cout << std::flush;
sys::Path uniqueFilename("bugpoint-output.bc");
std::string ErrMsg;
if (uniqueFilename.makeUnique(true, &ErrMsg)) {
llvm_cerr << getToolName() << ": Error making unique filename: "
<< ErrMsg << "\n";
cerr << getToolName() << ": Error making unique filename: "
<< ErrMsg << "\n";
return(1);
}
OutputFilename = uniqueFilename.toString();
@ -144,18 +143,18 @@ bool BugDriver::runPasses(const std::vector<const PassInfo*> &Passes,
// set up the input file name
sys::Path inputFilename("bugpoint-input.bc");
if (inputFilename.makeUnique(true, &ErrMsg)) {
llvm_cerr << getToolName() << ": Error making unique filename: "
<< ErrMsg << "\n";
cerr << getToolName() << ": Error making unique filename: "
<< ErrMsg << "\n";
return(1);
}
std::ios::openmode io_mode = std::ios::out | std::ios::trunc |
std::ios::binary;
std::ofstream InFile(inputFilename.c_str(), io_mode);
if (!InFile.good()) {
llvm_cerr << "Error opening bytecode file: " << inputFilename << "\n";
cerr << "Error opening bytecode file: " << inputFilename << "\n";
return(1);
}
llvm_ostream L(InFile);
OStream L(InFile);
WriteBytecodeToFile(Program,L,false);
InFile.close();
@ -207,17 +206,17 @@ bool BugDriver::runPasses(const std::vector<const PassInfo*> &Passes,
if (!Quiet) {
if (result == 0)
llvm_cout << "Success!\n";
cout << "Success!\n";
else if (result > 0)
llvm_cout << "Exited with error code '" << result << "'\n";
cout << "Exited with error code '" << result << "'\n";
else if (result < 0) {
if (result == -1)
llvm_cout << "Execute failed: " << ErrMsg << "\n";
cout << "Execute failed: " << ErrMsg << "\n";
else
llvm_cout << "Crashed with signal #" << abs(result) << "\n";
cout << "Crashed with signal #" << abs(result) << "\n";
}
if (result & 0x01000000)
llvm_cout << "Dumped core\n";
cout << "Dumped core\n";
}
// Was the child successful?
@ -235,8 +234,8 @@ Module *BugDriver::runPassesOn(Module *M,
std::string BytecodeResult;
if (runPasses(Passes, BytecodeResult, false/*delete*/, true/*quiet*/)) {
if (AutoDebugCrashes) {
llvm_cerr << " Error running this sequence of passes"
<< " on the input program!\n";
cerr << " Error running this sequence of passes"
<< " on the input program!\n";
delete OldProgram;
EmitProgressBytecode("pass-error", false);
exit(debugOptimizerCrash());
@ -250,8 +249,8 @@ Module *BugDriver::runPassesOn(Module *M,
Module *Ret = ParseInputFile(BytecodeResult);
if (Ret == 0) {
llvm_cerr << getToolName() << ": Error reading bytecode file '"
<< BytecodeResult << "'!\n";
cerr << getToolName() << ": Error reading bytecode file '"
<< BytecodeResult << "'!\n";
exit(1);
}
sys::Path(BytecodeResult).eraseFromDisk(); // No longer need the file on disk

Some files were not shown because too many files have changed in this diff Show More