1 //===- CallingConvEmitter.h - Generate calling conventions ------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file was developed by Chris Lattner and is distributed under
6 // the University of Illinois Open Source License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // This tablegen backend is responsible for emitting descriptions of the calling
11 // conventions supported by this target.
13 //===----------------------------------------------------------------------===//
15 #ifndef CALLINGCONV_EMITTER_H
16 #define CALLINGCONV_EMITTER_H
18 #include "TableGenBackend.h"
24 class CallingConvEmitter : public TableGenBackend {
25 RecordKeeper &Records;
27 CallingConvEmitter(RecordKeeper &R) : Records(R) {}
29 // run - Output the asmwriter, returning true on failure.
30 void run(std::ostream &o);
33 void EmitCallingConv(Record *CC, std::ostream &O);
34 void EmitAction(Record *Action, unsigned Indent, std::ostream &O);