Emit TargetRegisterInfo::composeSubRegIndices().
[oota-llvm.git] / utils / TableGen / NeonEmitter.h
1 //===- NeonEmitter.h - Generate arm_neon.h for use with clang ---*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This tablegen backend is responsible for emitting arm_neon.h, which includes
11 // a declaration and definition of each function specified by the ARM NEON 
12 // compiler interface.  See ARM document DUI0348B.
13 //
14 //===----------------------------------------------------------------------===//
15
16 #ifndef NEON_EMITTER_H
17 #define NEON_EMITTER_H
18
19 #include "TableGenBackend.h"
20
21 namespace llvm {
22   
23   class NeonEmitter : public TableGenBackend {
24     RecordKeeper &Records;
25   public:
26     NeonEmitter(RecordKeeper &R) : Records(R) {}
27     
28     // runHeader - Emit a header file that allows use of the instruction table.
29     void run(raw_ostream &o);
30   };
31   
32 } // End llvm namespace
33
34 #endif