25#include "ir/visitor.h"
30void dump(std::ostream &out,
const IR::Node *n);
31void dump(std::ostream &out,
const IR::Node *n,
unsigned maxdepth);
33void dump(
const IR::Node *n,
unsigned maxdepth);
35void dump(
const IR::INode *n,
unsigned maxdepth);
36void dump(uintptr_t p);
37void dump(uintptr_t p,
unsigned maxdepth);
39void dump_notype(
const IR::Node *n,
unsigned maxdepth);
41void dump_notype(
const IR::INode *n,
unsigned maxdepth);
42void dump_notype(uintptr_t p);
43void dump_notype(uintptr_t p,
unsigned maxdepth);
44void dump(std::ostream &,
const Visitor::Context *);
45void dump(
const Visitor::Context *);
47std::string dumpToString(
const IR::Node *n);
51 const Visitor::Context *ctxt =
nullptr;
53 friend std::ostream &operator<<(std::ostream &,
const Dump &);
56 explicit Dump(
const IR::Node *n,
unsigned maxdepth = ~0U) : n(n), maxdepth(maxdepth) {}
57 explicit Dump(
const Visitor::Context *ctxt) : ctxt(ctxt) {}
60inline std::ostream &operator<<(std::ostream &out,
const Dump &d) {
62 dump(out, d.n, d.maxdepth);
TODO: this is not really specific to BMV2, it should reside somewhere else.
Definition applyOptionsPragmas.cpp:24