From: Clifford Wolf Date: Mon, 18 Nov 2013 18:54:36 +0000 (+0100) Subject: Added dumping of attributes in AST frontend X-Git-Tag: yosys-0.2.0~363 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=79910a55473a697f4c4131151b15f42dc5337148;p=yosys.git Added dumping of attributes in AST frontend --- diff --git a/frontends/ast/ast.cc b/frontends/ast/ast.cc index 115a39333..887ae85c3 100644 --- a/frontends/ast/ast.cc +++ b/frontends/ast/ast.cc @@ -263,6 +263,11 @@ void AstNode::dumpAst(FILE *f, std::string indent) fprintf(f, " int=%u", (int)integer); fprintf(f, "\n"); + for (auto &it : attributes) { + fprintf(f, "%s ATTR %s:\n", indent.c_str(), it.first.c_str()); + it.second->dumpAst(f, indent + " "); + } + for (size_t i = 0; i < children.size(); i++) children[i]->dumpAst(f, indent + " "); } @@ -296,6 +301,12 @@ void AstNode::dumpVlog(FILE *f, std::string indent) return; } + for (auto &it : attributes) { + fprintf(f, "%s" "(* %s = ", indent.c_str(), id2vl(it.first).c_str()); + it.second->dumpVlog(f, ""); + fprintf(f, " *)%s", indent.empty() ? "" : "\n"); + } + switch (type) { case AST_MODULE: