Use an AssemblyAnnotatorWriter to clean up IVUsers' debug output.

The "uses=" comments are just clutter in this context.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95799 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman 2010-02-10 20:42:37 +00:00
parent 7a5666e7f3
commit 4207d6af5e

View File

@ -21,6 +21,7 @@
#include "llvm/Analysis/Dominators.h"
#include "llvm/Analysis/LoopPass.h"
#include "llvm/Analysis/ScalarEvolutionExpressions.h"
#include "llvm/Assembly/AsmAnnotationWriter.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
@ -340,6 +341,13 @@ const SCEV *IVUsers::getCanonicalExpr(const IVStrideUse &U) const {
return RetVal;
}
namespace {
// Suppress extraneous comments.
class IVUsersAsmAnnotator : public AssemblyAnnotationWriter {};
}
void IVUsers::print(raw_ostream &OS, const Module *M) const {
OS << "IV Users for loop ";
WriteAsOperand(OS, L->getHeader(), false);
@ -349,6 +357,7 @@ void IVUsers::print(raw_ostream &OS, const Module *M) const {
}
OS << ":\n";
IVUsersAsmAnnotator Annotator;
for (unsigned Stride = 0, e = StrideOrder.size(); Stride != e; ++Stride) {
std::map<const SCEV *, IVUsersOfOneStride*>::const_iterator SI =
IVUsesByStride.find(StrideOrder[Stride]);
@ -364,7 +373,7 @@ void IVUsers::print(raw_ostream &OS, const Module *M) const {
if (UI->isUseOfPostIncrementedValue())
OS << " (post-inc)";
OS << " in ";
UI->getUser()->print(OS);
UI->getUser()->print(OS, &Annotator);
OS << '\n';
}
}