reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

utils/TableGen/DAGISelMatcherEmitter.cpp
 1066   OS << "#if defined(GET_DAGISEL_DECL) && defined(GET_DAGISEL_BODY)\n";
 1067   OS << "#error GET_DAGISEL_DECL and GET_DAGISEL_BODY cannot be both defined, ";
 1068   OS << "undef both for inline definitions\n";
 1069   OS << "#endif\n\n";
 1072   OS << "#ifdef GET_DAGISEL_BODY\n";
 1073   OS << "#define LOCAL_DAGISEL_STRINGIZE(X) LOCAL_DAGISEL_STRINGIZE_(X)\n";
 1074   OS << "#define LOCAL_DAGISEL_STRINGIZE_(X) #X\n";
 1075   OS << "static_assert(sizeof(LOCAL_DAGISEL_STRINGIZE(GET_DAGISEL_BODY)) > 1,"
 1077   OS << "   \"GET_DAGISEL_BODY is empty: it should be defined with the class "
 1079   OS << "#undef LOCAL_DAGISEL_STRINGIZE_\n";
 1080   OS << "#undef LOCAL_DAGISEL_STRINGIZE\n";
 1081   OS << "#endif\n\n";
 1083   OS << "#if !defined(GET_DAGISEL_DECL) && !defined(GET_DAGISEL_BODY)\n";
 1084   OS << "#define DAGISEL_INLINE 1\n";
 1085   OS << "#else\n";
 1086   OS << "#define DAGISEL_INLINE 0\n";
 1087   OS << "#endif\n\n";
 1089   OS << "#if !DAGISEL_INLINE\n";
 1090   OS << "#define DAGISEL_CLASS_COLONCOLON GET_DAGISEL_BODY ::\n";
 1091   OS << "#else\n";
 1092   OS << "#define DAGISEL_CLASS_COLONCOLON\n";
 1093   OS << "#endif\n\n";
 1095   BeginEmitFunction(OS, "void", "SelectCode(SDNode *N)", false/*AddOverride*/);
 1098   OS << "{\n";
 1099   OS << "  // Some target values are emitted as 2 bytes, TARGET_VAL handles\n";
 1100   OS << "  // this.\n";
 1101   OS << "  #define TARGET_VAL(X) X & 255, unsigned(X) >> 8\n";
 1102   OS << "  static const unsigned char MatcherTable[] = {\n";
 1103   unsigned TotalSize = MatcherEmitter.EmitMatcherList(TheMatcher, 1, 0, OS);
 1104   OS << "    0\n  }; // Total Array size is " << (TotalSize+1) << " bytes\n\n";
 1106   MatcherEmitter.EmitHistogram(TheMatcher, OS);
 1108   OS << "  #undef TARGET_VAL\n";
 1109   OS << "  SelectCodeCommon(N, MatcherTable,sizeof(MatcherTable));\n";
 1110   OS << "}\n";
 1111   EndEmitFunction(OS);
 1114   MatcherEmitter.EmitPredicateFunctions(OS);
 1117     MatcherEmitter.EmitPatternMatchTable(OS);
 1120   OS << "\n";
 1121   OS << "#ifdef DAGISEL_INLINE\n";
 1122   OS << "#undef DAGISEL_INLINE\n";
 1123   OS << "#endif\n";
 1124   OS << "#ifdef DAGISEL_CLASS_COLONCOLON\n";
 1125   OS << "#undef DAGISEL_CLASS_COLONCOLON\n";
 1126   OS << "#endif\n";
 1127   OS << "#ifdef GET_DAGISEL_DECL\n";
 1128   OS << "#undef GET_DAGISEL_DECL\n";
 1129   OS << "#endif\n";
 1130   OS << "#ifdef GET_DAGISEL_BODY\n";
 1131   OS << "#undef GET_DAGISEL_BODY\n";
 1132   OS << "#endif\n";