summaryrefslogtreecommitdiff
path: root/utils/TableGen/LLVMCConfigurationEmitter.h
blob: 98c4bc0695606f71058e7c044ec6040b01d3f462 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
//===- LLVMCConfigurationEmitter.cpp - Generate LLVMCC config ---*- C++ -*-===//
//
//                     The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open
// Source License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This tablegen backend is responsible for emitting LLVMCC configuration code.
//
//===----------------------------------------------------------------------===//

#ifndef LLVM_UTILS_TABLEGEN_LLVMCCONF_EMITTER_H
#define LLVM_UTILS_TABLEGEN_LLVMCCONF_EMITTER_H

#include "TableGenBackend.h"

namespace llvm {

  /// LLVMCConfigurationEmitter - TableGen backend that generates
  /// configuration code for LLVMC.
  class LLVMCConfigurationEmitter : public TableGenBackend {
    RecordKeeper &Records;
  public:
    explicit LLVMCConfigurationEmitter(RecordKeeper &R) : Records(R) {}

    // run - Output the asmwriter, returning true on failure.
    void run(std::ostream &o);
  };
}

#endif //LLVM_UTILS_TABLEGEN_LLVMCCONF_EMITTER_H