Lines Matching refs:OS

29   IfDefScope(StringRef Name, raw_ostream &OS) : Name(Name), OS(OS) {  in IfDefScope()  argument
30 OS << "#ifdef " << Name << "\n" in IfDefScope()
34 ~IfDefScope() { OS << "\n#endif // " << Name << "\n\n"; } in ~IfDefScope()
38 raw_ostream &OS; member in __anoncf2069ea0111::IfDefScope
44 raw_ostream &OS, StringRef Enum, StringRef Prefix, in GenerateEnumClass() argument
46 OS << "\n"; in GenerateEnumClass()
47 OS << "enum class " << Enum << " {\n"; in GenerateEnumClass()
50 OS << " " << Prefix << Rec.getFormattedName() << ",\n"; in GenerateEnumClass()
52 OS << "};\n"; in GenerateEnumClass()
53 OS << "\n"; in GenerateEnumClass()
54 OS << "static constexpr std::size_t " << Enum in GenerateEnumClass()
63 OS << "\n"; in GenerateEnumClass()
66 OS << "constexpr auto " << Prefix << Rec.getFormattedName() << " = " in GenerateEnumClass()
76 raw_ostream &OS, in GenerateEnumClauseVal() argument
92 OS << "\n"; in GenerateEnumClauseVal()
93 OS << "enum class " << EnumName << " {\n"; in GenerateEnumClauseVal()
96 OS << " " << CV->getName() << "=" << CVal.getValue() << ",\n"; in GenerateEnumClauseVal()
98 OS << "};\n"; in GenerateEnumClauseVal()
101 OS << "\n"; in GenerateEnumClauseVal()
103 OS << "constexpr auto " << CV->getName() << " = " in GenerateEnumClauseVal()
179 static void EmitDirectivesDecl(RecordKeeper &Records, raw_ostream &OS) { in EmitDirectivesDecl() argument
184 OS << "#ifndef LLVM_" << DirLang.getName() << "_INC\n"; in EmitDirectivesDecl()
185 OS << "#define LLVM_" << DirLang.getName() << "_INC\n"; in EmitDirectivesDecl()
188 OS << "\n#include \"llvm/ADT/BitmaskEnum.h\"\n"; in EmitDirectivesDecl()
190 OS << "\n"; in EmitDirectivesDecl()
191 OS << "namespace llvm {\n"; in EmitDirectivesDecl()
192 OS << "class StringRef;\n"; in EmitDirectivesDecl()
198 OS << "namespace " << Ns << " {\n"; in EmitDirectivesDecl()
201 OS << "\nLLVM_ENABLE_BITMASK_ENUMS_IN_NAMESPACE();\n"; in EmitDirectivesDecl()
204 GenerateEnumClass(DirLang.getDirectives(), OS, "Directive", in EmitDirectivesDecl()
208 GenerateEnumClass(DirLang.getClauses(), OS, "Clause", in EmitDirectivesDecl()
213 GenerateEnumClauseVal(DirLang.getClauses(), OS, DirLang, EnumHelperFuncs); in EmitDirectivesDecl()
216 OS << "\n"; in EmitDirectivesDecl()
217 OS << "// Enumeration helper functions\n"; in EmitDirectivesDecl()
218 OS << "Directive get" << DirLang.getName() in EmitDirectivesDecl()
220 OS << "\n"; in EmitDirectivesDecl()
221 OS << "llvm::StringRef get" << DirLang.getName() in EmitDirectivesDecl()
223 OS << "\n"; in EmitDirectivesDecl()
224 OS << "Clause get" << DirLang.getName() in EmitDirectivesDecl()
226 OS << "\n"; in EmitDirectivesDecl()
227 OS << "llvm::StringRef get" << DirLang.getName() << "ClauseName(Clause C);\n"; in EmitDirectivesDecl()
228 OS << "\n"; in EmitDirectivesDecl()
229 OS << "/// Return true if \\p C is a valid clause for \\p D in version \\p " in EmitDirectivesDecl()
231 OS << "bool isAllowedClauseForDirective(Directive D, " in EmitDirectivesDecl()
233 OS << "\n"; in EmitDirectivesDecl()
235 OS << EnumHelperFuncs; in EmitDirectivesDecl()
236 OS << "\n"; in EmitDirectivesDecl()
241 OS << "} // namespace " << Ns << "\n"; in EmitDirectivesDecl()
243 OS << "} // namespace llvm\n"; in EmitDirectivesDecl()
245 OS << "#endif // LLVM_" << DirLang.getName() << "_INC\n"; in EmitDirectivesDecl()
250 raw_ostream &OS, StringRef Enum, in GenerateGetName() argument
253 OS << "\n"; in GenerateGetName()
254 OS << "llvm::StringRef llvm::" << DirLang.getCppNamespace() << "::get" in GenerateGetName()
256 OS << " switch (Kind) {\n"; in GenerateGetName()
259 OS << " case " << Prefix << Rec.getFormattedName() << ":\n"; in GenerateGetName()
260 OS << " return \""; in GenerateGetName()
262 OS << Rec.getName(); in GenerateGetName()
264 OS << Rec.getAlternativeName(); in GenerateGetName()
265 OS << "\";\n"; in GenerateGetName()
267 OS << " }\n"; // switch in GenerateGetName()
268 OS << " llvm_unreachable(\"Invalid " << DirLang.getName() << " " << Enum in GenerateGetName()
270 OS << "}\n"; in GenerateGetName()
275 raw_ostream &OS, StringRef Enum, in GenerateGetKind() argument
289 OS << "\n"; in GenerateGetKind()
290 OS << Enum << " llvm::" << DirLang.getCppNamespace() << "::get" in GenerateGetKind()
292 OS << " return llvm::StringSwitch<" << Enum << ">(Str)\n"; in GenerateGetKind()
297 OS << " .Case(\"" << Rec.getName() << "\"," << Prefix in GenerateGetKind()
300 OS << " .Case(\"" << Rec.getName() << "\"," << Prefix in GenerateGetKind()
304 OS << " .Default(" << Prefix << DefaultRec.getFormattedName() << ");\n"; in GenerateGetKind()
305 OS << "}\n"; in GenerateGetKind()
310 raw_ostream &OS) { in GenerateGetKindClauseVal() argument
335 OS << "\n"; in GenerateGetKindClauseVal()
336 OS << EnumName << " llvm::" << DirLang.getCppNamespace() << "::get" in GenerateGetKindClauseVal()
338 OS << " return llvm::StringSwitch<" << EnumName << ">(Str)\n"; in GenerateGetKindClauseVal()
341 OS << " .Case(\"" << CVal.getFormattedName() << "\"," << CV->getName() in GenerateGetKindClauseVal()
344 OS << " .Default(" << DefaultName << ");\n"; in GenerateGetKindClauseVal()
345 OS << "}\n"; in GenerateGetKindClauseVal()
347 OS << "\n"; in GenerateGetKindClauseVal()
348 OS << "llvm::StringRef llvm::" << DirLang.getCppNamespace() << "::get" in GenerateGetKindClauseVal()
352 OS << " switch (x) {\n"; in GenerateGetKindClauseVal()
355 OS << " case " << CV->getName() << ":\n"; in GenerateGetKindClauseVal()
356 OS << " return \"" << CVal.getFormattedName() << "\";\n"; in GenerateGetKindClauseVal()
358 OS << " }\n"; // switch in GenerateGetKindClauseVal()
359 OS << " llvm_unreachable(\"Invalid " << DirLang.getName() << " " in GenerateGetKindClauseVal()
361 OS << "}\n"; in GenerateGetKindClauseVal()
367 raw_ostream &OS, StringRef DirectiveName, in GenerateCaseForVersionedClauses() argument
376 OS << " case " << DirLang.getClausePrefix() << ClauseFormattedName in GenerateCaseForVersionedClauses()
378 OS << " return " << VerClause.getMinVersion() in GenerateCaseForVersionedClauses()
386 raw_ostream &OS) { in GenerateIsAllowedClause() argument
387 OS << "\n"; in GenerateIsAllowedClause()
388 OS << "bool llvm::" << DirLang.getCppNamespace() in GenerateIsAllowedClause()
391 OS << " assert(unsigned(D) <= llvm::" << DirLang.getCppNamespace() in GenerateIsAllowedClause()
393 OS << " assert(unsigned(C) <= llvm::" << DirLang.getCppNamespace() in GenerateIsAllowedClause()
396 OS << " switch (D) {\n"; in GenerateIsAllowedClause()
401 OS << " case " << DirLang.getDirectivePrefix() << Dir.getFormattedName() in GenerateIsAllowedClause()
407 OS << " return false;\n"; in GenerateIsAllowedClause()
409 OS << " switch (C) {\n"; in GenerateIsAllowedClause()
413 GenerateCaseForVersionedClauses(Dir.getAllowedClauses(), OS, in GenerateIsAllowedClause()
416 GenerateCaseForVersionedClauses(Dir.getAllowedOnceClauses(), OS, in GenerateIsAllowedClause()
419 GenerateCaseForVersionedClauses(Dir.getAllowedExclusiveClauses(), OS, in GenerateIsAllowedClause()
422 GenerateCaseForVersionedClauses(Dir.getRequiredClauses(), OS, in GenerateIsAllowedClause()
425 OS << " default:\n"; in GenerateIsAllowedClause()
426 OS << " return false;\n"; in GenerateIsAllowedClause()
427 OS << " }\n"; // End of clauses switch in GenerateIsAllowedClause()
429 OS << " break;\n"; in GenerateIsAllowedClause()
432 OS << " }\n"; // End of directives switch in GenerateIsAllowedClause()
433 OS << " llvm_unreachable(\"Invalid " << DirLang.getName() in GenerateIsAllowedClause()
435 OS << "}\n"; // End of function isAllowedClauseForDirective in GenerateIsAllowedClause()
440 raw_ostream &OS, StringRef ClauseSetPrefix, in GenerateClauseSet() argument
444 OS << "\n"; in GenerateClauseSet()
445 OS << " static " << DirLang.getClauseEnumSetClass() << " " << ClauseSetPrefix in GenerateClauseSet()
450 OS << " llvm::" << DirLang.getCppNamespace() in GenerateClauseSet()
454 OS << " };\n"; in GenerateClauseSet()
459 raw_ostream &OS) { in GenerateDirectiveClauseSets() argument
461 IfDefScope Scope("GEN_FLANG_DIRECTIVE_CLAUSE_SETS", OS); in GenerateDirectiveClauseSets()
463 OS << "\n"; in GenerateDirectiveClauseSets()
464 OS << "namespace llvm {\n"; in GenerateDirectiveClauseSets()
470 OS << "namespace " << Ns << " {\n"; in GenerateDirectiveClauseSets()
475 OS << "\n"; in GenerateDirectiveClauseSets()
476 OS << " // Sets for " << Dir.getName() << "\n"; in GenerateDirectiveClauseSets()
478 GenerateClauseSet(Dir.getAllowedClauses(), OS, "allowedClauses_", Dir, in GenerateDirectiveClauseSets()
480 GenerateClauseSet(Dir.getAllowedOnceClauses(), OS, "allowedOnceClauses_", in GenerateDirectiveClauseSets()
482 GenerateClauseSet(Dir.getAllowedExclusiveClauses(), OS, in GenerateDirectiveClauseSets()
484 GenerateClauseSet(Dir.getRequiredClauses(), OS, "requiredClauses_", Dir, in GenerateDirectiveClauseSets()
490 OS << "} // namespace " << Ns << "\n"; in GenerateDirectiveClauseSets()
492 OS << "} // namespace llvm\n"; in GenerateDirectiveClauseSets()
499 raw_ostream &OS) { in GenerateDirectiveClauseMap() argument
501 IfDefScope Scope("GEN_FLANG_DIRECTIVE_CLAUSE_MAP", OS); in GenerateDirectiveClauseMap()
503 OS << "\n"; in GenerateDirectiveClauseMap()
504 OS << "{\n"; in GenerateDirectiveClauseMap()
508 OS << " {llvm::" << DirLang.getCppNamespace() in GenerateDirectiveClauseMap()
511 OS << " {\n"; in GenerateDirectiveClauseMap()
512 OS << " llvm::" << DirLang.getCppNamespace() << "::allowedClauses_" in GenerateDirectiveClauseMap()
514 OS << " llvm::" << DirLang.getCppNamespace() << "::allowedOnceClauses_" in GenerateDirectiveClauseMap()
516 OS << " llvm::" << DirLang.getCppNamespace() in GenerateDirectiveClauseMap()
519 OS << " llvm::" << DirLang.getCppNamespace() << "::requiredClauses_" in GenerateDirectiveClauseMap()
521 OS << " }\n"; in GenerateDirectiveClauseMap()
522 OS << " },\n"; in GenerateDirectiveClauseMap()
525 OS << "}\n"; in GenerateDirectiveClauseMap()
534 raw_ostream &OS) { in GenerateFlangClauseParserClass() argument
536 IfDefScope Scope("GEN_FLANG_CLAUSE_PARSER_CLASSES", OS); in GenerateFlangClauseParserClass()
538 OS << "\n"; in GenerateFlangClauseParserClass()
543 OS << "WRAPPER_CLASS(" << Clause.getFormattedParserClassName() << ", "; in GenerateFlangClauseParserClass()
545 OS << "std::optional<std::list<" << Clause.getFlangClass() << ">>"; in GenerateFlangClauseParserClass()
547 OS << "std::optional<" << Clause.getFlangClass() << ">"; in GenerateFlangClauseParserClass()
549 OS << "std::list<" << Clause.getFlangClass() << ">"; in GenerateFlangClauseParserClass()
551 OS << Clause.getFlangClass(); in GenerateFlangClauseParserClass()
554 OS << "EMPTY_CLASS(" << Clause.getFormattedParserClassName(); in GenerateFlangClauseParserClass()
556 OS << ");\n"; in GenerateFlangClauseParserClass()
562 raw_ostream &OS) { in GenerateFlangClauseParserClassList() argument
564 IfDefScope Scope("GEN_FLANG_CLAUSE_PARSER_CLASSES_LIST", OS); in GenerateFlangClauseParserClassList()
566 OS << "\n"; in GenerateFlangClauseParserClassList()
567 llvm::interleaveComma(DirLang.getClauses(), OS, [&](Record *C) { in GenerateFlangClauseParserClassList()
569 OS << Clause.getFormattedParserClassName() << "\n"; in GenerateFlangClauseParserClassList()
575 raw_ostream &OS) { in GenerateFlangClauseDump() argument
577 IfDefScope Scope("GEN_FLANG_DUMP_PARSE_TREE_CLAUSES", OS); in GenerateFlangClauseDump()
579 OS << "\n"; in GenerateFlangClauseDump()
582 OS << "NODE(" << DirLang.getFlangClauseBaseClass() << ", " in GenerateFlangClauseDump()
590 raw_ostream &OS) { in GenerateFlangClauseUnparse() argument
592 IfDefScope Scope("GEN_FLANG_CLAUSE_UNPARSE", OS); in GenerateFlangClauseUnparse()
594 OS << "\n"; in GenerateFlangClauseUnparse()
600 OS << "void Unparse(const " << DirLang.getFlangClauseBaseClass() in GenerateFlangClauseUnparse()
602 OS << " Word(\"" << Clause.getName().upper() << "\");\n"; in GenerateFlangClauseUnparse()
604 OS << " Walk(\"(\", x.v, \")\");\n"; in GenerateFlangClauseUnparse()
605 OS << "}\n"; in GenerateFlangClauseUnparse()
607 OS << "void Unparse(const " << DirLang.getFlangClauseBaseClass() in GenerateFlangClauseUnparse()
609 OS << " Word(\"" << Clause.getName().upper() << "\");\n"; in GenerateFlangClauseUnparse()
610 OS << " Put(\"(\");\n"; in GenerateFlangClauseUnparse()
611 OS << " if (x.v.has_value())\n"; in GenerateFlangClauseUnparse()
613 OS << " Walk(x.v, \",\");\n"; in GenerateFlangClauseUnparse()
615 OS << " Walk(x.v);\n"; in GenerateFlangClauseUnparse()
616 OS << " else\n"; in GenerateFlangClauseUnparse()
617 OS << " Put(\"" << Clause.getDefaultValue() << "\");\n"; in GenerateFlangClauseUnparse()
618 OS << " Put(\")\");\n"; in GenerateFlangClauseUnparse()
619 OS << "}\n"; in GenerateFlangClauseUnparse()
621 OS << "void Unparse(const " << DirLang.getFlangClauseBaseClass() in GenerateFlangClauseUnparse()
623 OS << " Word(\"" << Clause.getName().upper() << "\");\n"; in GenerateFlangClauseUnparse()
624 OS << " Put(\"(\");\n"; in GenerateFlangClauseUnparse()
626 OS << " Walk(x.v, \",\");\n"; in GenerateFlangClauseUnparse()
628 OS << " Walk(x.v);\n"; in GenerateFlangClauseUnparse()
629 OS << " Put(\")\");\n"; in GenerateFlangClauseUnparse()
630 OS << "}\n"; in GenerateFlangClauseUnparse()
633 OS << "void Before(const " << DirLang.getFlangClauseBaseClass() in GenerateFlangClauseUnparse()
642 raw_ostream &OS) { in GenerateFlangClauseCheckPrototypes() argument
644 IfDefScope Scope("GEN_FLANG_CLAUSE_CHECK_ENTER", OS); in GenerateFlangClauseCheckPrototypes()
646 OS << "\n"; in GenerateFlangClauseCheckPrototypes()
649 OS << "void Enter(const parser::" << DirLang.getFlangClauseBaseClass() in GenerateFlangClauseCheckPrototypes()
657 raw_ostream &OS) { in GenerateFlangClauseParserKindMap() argument
659 IfDefScope Scope("GEN_FLANG_CLAUSE_PARSER_KIND_MAP", OS); in GenerateFlangClauseParserKindMap()
661 OS << "\n"; in GenerateFlangClauseParserKindMap()
664 OS << "if constexpr (std::is_same_v<A, parser::" in GenerateFlangClauseParserKindMap()
667 OS << ">)\n"; in GenerateFlangClauseParserKindMap()
668 OS << " return llvm::" << DirLang.getCppNamespace() in GenerateFlangClauseParserKindMap()
673 OS << "llvm_unreachable(\"Invalid " << DirLang.getName() in GenerateFlangClauseParserKindMap()
685 raw_ostream &OS) { in GenerateFlangClausesParser() argument
690 IfDefScope Scope("GEN_FLANG_CLAUSES_PARSER", OS); in GenerateFlangClausesParser()
691 OS << "\n"; in GenerateFlangClausesParser()
694 OS << "TYPE_PARSER(\n"; in GenerateFlangClausesParser()
698 OS << " \"" << Clause.getName() << "\""; in GenerateFlangClausesParser()
700 OS << " (" in GenerateFlangClausesParser()
703 OS << " || \"" << alias << "\"_tok"; in GenerateFlangClausesParser()
705 OS << ")"; in GenerateFlangClausesParser()
708 OS << " >> construct<" << DirLang.getFlangClauseBaseClass() in GenerateFlangClausesParser()
712 OS << "))"; in GenerateFlangClausesParser()
714 OS << " ||"; in GenerateFlangClausesParser()
715 OS << "\n"; in GenerateFlangClausesParser()
721 OS << "maybe("; in GenerateFlangClausesParser()
722 OS << "parenthesized("; in GenerateFlangClausesParser()
724 OS << "nonemptyList("; in GenerateFlangClausesParser()
727 OS << "\"" << Clause.getPrefix() << ":\" >> "; in GenerateFlangClausesParser()
743 OS << Parser; in GenerateFlangClausesParser()
745 OS << " || " << Parser; in GenerateFlangClausesParser()
747 OS << ")"; in GenerateFlangClausesParser()
748 OS << ")"; // close parenthesized(. in GenerateFlangClausesParser()
751 OS << ")"; in GenerateFlangClausesParser()
752 OS << "))"; in GenerateFlangClausesParser()
754 OS << " ||"; in GenerateFlangClausesParser()
755 OS << "\n"; in GenerateFlangClausesParser()
758 OS << ")\n"; in GenerateFlangClausesParser()
764 raw_ostream &OS) { in EmitDirectivesFlangImpl() argument
766 GenerateDirectiveClauseSets(DirLang, OS); in EmitDirectivesFlangImpl()
768 GenerateDirectiveClauseMap(DirLang, OS); in EmitDirectivesFlangImpl()
770 GenerateFlangClauseParserClass(DirLang, OS); in EmitDirectivesFlangImpl()
772 GenerateFlangClauseParserClassList(DirLang, OS); in EmitDirectivesFlangImpl()
774 GenerateFlangClauseDump(DirLang, OS); in EmitDirectivesFlangImpl()
776 GenerateFlangClauseUnparse(DirLang, OS); in EmitDirectivesFlangImpl()
778 GenerateFlangClauseCheckPrototypes(DirLang, OS); in EmitDirectivesFlangImpl()
780 GenerateFlangClauseParserKindMap(DirLang, OS); in EmitDirectivesFlangImpl()
782 GenerateFlangClausesParser(DirLang, OS); in EmitDirectivesFlangImpl()
786 raw_ostream &OS) { in GenerateClauseClassMacro() argument
788 IfDefScope Scope("GEN_CLANG_CLAUSE_CLASS", OS); in GenerateClauseClassMacro()
790 OS << "\n"; in GenerateClauseClassMacro()
792 OS << "#ifndef CLAUSE\n"; in GenerateClauseClassMacro()
793 OS << "#define CLAUSE(Enum, Str, Implicit)\n"; in GenerateClauseClassMacro()
794 OS << "#endif\n"; in GenerateClauseClassMacro()
795 OS << "#ifndef CLAUSE_CLASS\n"; in GenerateClauseClassMacro()
796 OS << "#define CLAUSE_CLASS(Enum, Str, Class)\n"; in GenerateClauseClassMacro()
797 OS << "#endif\n"; in GenerateClauseClassMacro()
798 OS << "#ifndef CLAUSE_NO_CLASS\n"; in GenerateClauseClassMacro()
799 OS << "#define CLAUSE_NO_CLASS(Enum, Str)\n"; in GenerateClauseClassMacro()
800 OS << "#endif\n"; in GenerateClauseClassMacro()
801 OS << "\n"; in GenerateClauseClassMacro()
802 OS << "#define __CLAUSE(Name, Class) \\\n"; in GenerateClauseClassMacro()
803 OS << " CLAUSE(" << DirLang.getClausePrefix() in GenerateClauseClassMacro()
805 OS << " CLAUSE_CLASS(" << DirLang.getClausePrefix() in GenerateClauseClassMacro()
807 OS << "#define __CLAUSE_NO_CLASS(Name) \\\n"; in GenerateClauseClassMacro()
808 OS << " CLAUSE(" << DirLang.getClausePrefix() in GenerateClauseClassMacro()
810 OS << " CLAUSE_NO_CLASS(" << DirLang.getClausePrefix() << "##Name, #Name)\n"; in GenerateClauseClassMacro()
811 OS << "#define __IMPLICIT_CLAUSE_CLASS(Name, Str, Class) \\\n"; in GenerateClauseClassMacro()
812 OS << " CLAUSE(" << DirLang.getClausePrefix() in GenerateClauseClassMacro()
814 OS << " CLAUSE_CLASS(" << DirLang.getClausePrefix() in GenerateClauseClassMacro()
816 OS << "#define __IMPLICIT_CLAUSE_NO_CLASS(Name, Str) \\\n"; in GenerateClauseClassMacro()
817 OS << " CLAUSE(" << DirLang.getClausePrefix() in GenerateClauseClassMacro()
819 OS << " CLAUSE_NO_CLASS(" << DirLang.getClausePrefix() << "##Name, Str)\n"; in GenerateClauseClassMacro()
820 OS << "\n"; in GenerateClauseClassMacro()
826 OS << "__IMPLICIT_CLAUSE_NO_CLASS(" << C.getFormattedName() << ", \"" in GenerateClauseClassMacro()
829 OS << "__CLAUSE_NO_CLASS(" << C.getFormattedName() << ")\n"; in GenerateClauseClassMacro()
833 OS << "__IMPLICIT_CLAUSE_CLASS(" << C.getFormattedName() << ", \"" in GenerateClauseClassMacro()
836 OS << "__CLAUSE(" << C.getFormattedName() << ", " << C.getClangClass() in GenerateClauseClassMacro()
842 OS << "\n"; in GenerateClauseClassMacro()
843 OS << "#undef __IMPLICIT_CLAUSE_NO_CLASS\n"; in GenerateClauseClassMacro()
844 OS << "#undef __IMPLICIT_CLAUSE_CLASS\n"; in GenerateClauseClassMacro()
845 OS << "#undef __CLAUSE\n"; in GenerateClauseClassMacro()
846 OS << "#undef CLAUSE_NO_CLASS\n"; in GenerateClauseClassMacro()
847 OS << "#undef CLAUSE_CLASS\n"; in GenerateClauseClassMacro()
848 OS << "#undef CLAUSE\n"; in GenerateClauseClassMacro()
854 raw_ostream &OS) { in EmitDirectivesBasicImpl() argument
855 IfDefScope Scope("GEN_DIRECTIVES_IMPL", OS); in EmitDirectivesBasicImpl()
858 GenerateGetKind(DirLang.getDirectives(), OS, "Directive", DirLang, in EmitDirectivesBasicImpl()
862 GenerateGetName(DirLang.getDirectives(), OS, "Directive", DirLang, in EmitDirectivesBasicImpl()
866 GenerateGetKind(DirLang.getClauses(), OS, "Clause", DirLang, in EmitDirectivesBasicImpl()
871 GenerateGetName(DirLang.getClauses(), OS, "Clause", DirLang, in EmitDirectivesBasicImpl()
875 GenerateGetKindClauseVal(DirLang, OS); in EmitDirectivesBasicImpl()
878 GenerateIsAllowedClause(DirLang, OS); in EmitDirectivesBasicImpl()
883 static void EmitDirectivesImpl(RecordKeeper &Records, raw_ostream &OS) { in EmitDirectivesImpl() argument
888 EmitDirectivesFlangImpl(DirLang, OS); in EmitDirectivesImpl()
890 GenerateClauseClassMacro(DirLang, OS); in EmitDirectivesImpl()
892 EmitDirectivesBasicImpl(DirLang, OS); in EmitDirectivesImpl()