//===- MCAsmMacro.h - Assembly Macros ---------------------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// #include "llvm/MC/MCAsmMacro.h" #include "llvm/Support/raw_ostream.h" using namespace llvm; void MCAsmMacroParameter::dump(raw_ostream &OS) const { OS << "\"" << Name << "\""; if (Required) OS << ":req"; if (Vararg) OS << ":vararg"; if (!Value.empty()) { OS << " = "; bool first = true; for (const AsmToken &T : Value) { if (!first) OS << ", "; first = false; OS << T.getString(); } } OS << "\n"; } void MCAsmMacro::dump(raw_ostream &OS) const { OS << "Macro " << Name << ":\n"; OS << " Parameters:\n"; for (const MCAsmMacroParameter &P : Parameters) { OS << " "; P.dump(); } OS << " (BEGIN BODY)" << Body << "(END BODY)\n"; }