1239313Sdim//===- TableGenBackends.h - Declarations for Clang TableGen Backends ------===// 2239313Sdim// 3239313Sdim// The LLVM Compiler Infrastructure 4239313Sdim// 5239313Sdim// This file is distributed under the University of Illinois Open Source 6239313Sdim// License. See LICENSE.TXT for details. 7239313Sdim// 8239313Sdim//===----------------------------------------------------------------------===// 9239313Sdim// 10239313Sdim// This file contains the declarations for all of the Clang TableGen 11239313Sdim// backends. A "TableGen backend" is just a function. See 12239313Sdim// "$LLVM_ROOT/utils/TableGen/TableGenBackends.h" for more info. 13239313Sdim// 14239313Sdim//===----------------------------------------------------------------------===// 15239313Sdim 16239313Sdim#include <string> 17239313Sdim 18239313Sdimnamespace llvm { 19239313Sdim class raw_ostream; 20239313Sdim class RecordKeeper; 21239313Sdim} 22239313Sdim 23239313Sdimusing llvm::raw_ostream; 24239313Sdimusing llvm::RecordKeeper; 25239313Sdim 26239313Sdimnamespace clang { 27239313Sdim 28239313Sdimvoid EmitClangDeclContext(RecordKeeper &RK, raw_ostream &OS); 29239313Sdimvoid EmitClangASTNodes(RecordKeeper &RK, raw_ostream &OS, 30239313Sdim const std::string &N, const std::string &S); 31239313Sdim 32239313Sdimvoid EmitClangAttrClass(RecordKeeper &Records, raw_ostream &OS); 33251662Sdimvoid EmitClangAttrExprArgsList(RecordKeeper &Records, raw_ostream &OS); 34239313Sdimvoid EmitClangAttrImpl(RecordKeeper &Records, raw_ostream &OS); 35239313Sdimvoid EmitClangAttrList(RecordKeeper &Records, raw_ostream &OS); 36239313Sdimvoid EmitClangAttrPCHRead(RecordKeeper &Records, raw_ostream &OS); 37239313Sdimvoid EmitClangAttrPCHWrite(RecordKeeper &Records, raw_ostream &OS); 38239313Sdimvoid EmitClangAttrSpellingList(RecordKeeper &Records, raw_ostream &OS); 39249423Sdimvoid EmitClangAttrSpellingListIndex(RecordKeeper &Records, raw_ostream &OS); 40239313Sdimvoid EmitClangAttrLateParsedList(RecordKeeper &Records, raw_ostream &OS); 41239313Sdimvoid EmitClangAttrTemplateInstantiate(RecordKeeper &Records, raw_ostream &OS); 42239313Sdimvoid EmitClangAttrParsedAttrList(RecordKeeper &Records, raw_ostream &OS); 43239313Sdimvoid EmitClangAttrParsedAttrKinds(RecordKeeper &Records, raw_ostream &OS); 44249423Sdimvoid EmitClangAttrDump(RecordKeeper &Records, raw_ostream &OS); 45239313Sdim 46239313Sdimvoid EmitClangDiagsDefs(RecordKeeper &Records, raw_ostream &OS, 47239313Sdim const std::string &Component); 48239313Sdimvoid EmitClangDiagGroups(RecordKeeper &Records, raw_ostream &OS); 49239313Sdimvoid EmitClangDiagsIndexName(RecordKeeper &Records, raw_ostream &OS); 50239313Sdim 51239313Sdimvoid EmitClangSACheckers(RecordKeeper &Records, raw_ostream &OS); 52239313Sdim 53243830Sdimvoid EmitClangCommentHTMLTags(RecordKeeper &Records, raw_ostream &OS); 54243830Sdimvoid EmitClangCommentHTMLTagsProperties(RecordKeeper &Records, raw_ostream &OS); 55249423Sdimvoid EmitClangCommentHTMLNamedCharacterReferences(RecordKeeper &Records, raw_ostream &OS); 56243830Sdim 57243830Sdimvoid EmitClangCommentCommandInfo(RecordKeeper &Records, raw_ostream &OS); 58249423Sdimvoid EmitClangCommentCommandList(RecordKeeper &Records, raw_ostream &OS); 59243830Sdim 60239313Sdimvoid EmitNeon(RecordKeeper &Records, raw_ostream &OS); 61239313Sdimvoid EmitNeonSema(RecordKeeper &Records, raw_ostream &OS); 62239313Sdimvoid EmitNeonTest(RecordKeeper &Records, raw_ostream &OS); 63239313Sdim 64239313Sdimvoid EmitOptParser(RecordKeeper &Records, raw_ostream &OS, bool GenDefs); 65239313Sdim 66239313Sdim} // end namespace clang 67