174462Salfred//===- TableGenBackends.h - Declarations for Clang TableGen Backends ------===// 274462Salfred// 374462Salfred// The LLVM Compiler Infrastructure 414123Speter// 514123Speter// This file is distributed under the University of Illinois Open Source 614123Speter// License. See LICENSE.TXT for details. 714123Speter// 814123Speter//===----------------------------------------------------------------------===// 914123Speter// 1014123Speter// This file contains the declarations for all of the Clang TableGen 1114123Speter// backends. A "TableGen backend" is just a function. See 1214123Speter// "$LLVM_ROOT/utils/TableGen/TableGenBackends.h" for more info. 1314123Speter// 1414123Speter//===----------------------------------------------------------------------===// 1514123Speter 1614123Speter#include <string> 1714123Speter 1814123Speternamespace llvm { 1914123Speter class raw_ostream; 2014123Speter class RecordKeeper; 2114123Speter} 2214123Speter 2314123Speterusing llvm::raw_ostream; 2414123Speterusing llvm::RecordKeeper; 2514123Speter 2614123Speternamespace clang { 2714123Speter 2814123Spetervoid EmitClangDeclContext(RecordKeeper &RK, raw_ostream &OS); 2914123Spetervoid EmitClangASTNodes(RecordKeeper &RK, raw_ostream &OS, 3014123Speter const std::string &N, const std::string &S); 3114123Speter 3214123Spetervoid EmitClangAttrClass(RecordKeeper &Records, raw_ostream &OS); 3314123Spetervoid EmitClangAttrIdentifierArgList(RecordKeeper &Records, raw_ostream &OS); 3414123Spetervoid EmitClangAttrTypeArgList(RecordKeeper &Records, raw_ostream &OS); 3514123Spetervoid EmitClangAttrImpl(RecordKeeper &Records, raw_ostream &OS); 3614123Spetervoid EmitClangAttrList(RecordKeeper &Records, raw_ostream &OS); 3774462Salfredvoid EmitClangAttrPCHRead(RecordKeeper &Records, raw_ostream &OS); 3830376Scharniervoid EmitClangAttrPCHWrite(RecordKeeper &Records, raw_ostream &OS); 3974462Salfredvoid EmitClangAttrSpellingList(RecordKeeper &Records, raw_ostream &OS); 4074462Salfredvoid EmitClangAttrSpellingListIndex(RecordKeeper &Records, raw_ostream &OS); 4114123Spetervoid EmitClangAttrLateParsedList(RecordKeeper &Records, raw_ostream &OS); 4274462Salfredvoid EmitClangAttrTemplateInstantiate(RecordKeeper &Records, raw_ostream &OS); 4374462Salfredvoid EmitClangAttrParsedAttrList(RecordKeeper &Records, raw_ostream &OS); 4474462Salfredvoid EmitClangAttrParsedAttrImpl(RecordKeeper &Records, raw_ostream &OS); 4574462Salfredvoid EmitClangAttrParsedAttrKinds(RecordKeeper &Records, raw_ostream &OS); 4674462Salfredvoid EmitClangAttrDump(RecordKeeper &Records, raw_ostream &OS); 4774462Salfred 4814123Spetervoid EmitClangDiagsDefs(RecordKeeper &Records, raw_ostream &OS, 49177662Sdfr const std::string &Component); 50177662Sdfrvoid EmitClangDiagGroups(RecordKeeper &Records, raw_ostream &OS); 51177662Sdfrvoid EmitClangDiagsIndexName(RecordKeeper &Records, raw_ostream &OS); 5274462Salfred 53177633Sdfrvoid EmitClangSACheckers(RecordKeeper &Records, raw_ostream &OS); 5474462Salfred 55173281Smatteovoid EmitClangCommentHTMLTags(RecordKeeper &Records, raw_ostream &OS); 56173281Smatteovoid EmitClangCommentHTMLTagsProperties(RecordKeeper &Records, raw_ostream &OS); 57173281Smatteovoid EmitClangCommentHTMLNamedCharacterReferences(RecordKeeper &Records, raw_ostream &OS); 5830376Scharnier 5974462Salfredvoid EmitClangCommentCommandInfo(RecordKeeper &Records, raw_ostream &OS); 6030376Scharniervoid EmitClangCommentCommandList(RecordKeeper &Records, raw_ostream &OS); 6174462Salfred 6274462Salfredvoid EmitNeon(RecordKeeper &Records, raw_ostream &OS); 6374462Salfredvoid EmitNeonSema(RecordKeeper &Records, raw_ostream &OS); 6430376Scharniervoid EmitNeonTest(RecordKeeper &Records, raw_ostream &OS); 6574462Salfred 6674462Salfred} // end namespace clang 6774462Salfred