Skip to content

Commit 3bd1a9f

Browse files
committed
[NFC] Emit nested namespaces in InstInfoEmitter
1 parent 25825d4 commit 3bd1a9f

File tree

1 file changed

+28
-61
lines changed

1 file changed

+28
-61
lines changed

llvm/utils/TableGen/InstrInfoEmitter.cpp

Lines changed: 28 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -293,24 +293,19 @@ void InstrInfoEmitter::emitOperandNameMappings(
293293

294294
OS << "#ifdef GET_INSTRINFO_OPERAND_ENUM\n";
295295
OS << "#undef GET_INSTRINFO_OPERAND_ENUM\n";
296-
OS << "namespace llvm {\n";
297-
OS << "namespace " << Namespace << " {\n";
298-
OS << "namespace " << OpNameNS << " {\n";
296+
OS << "namespace llvm:: " << Namespace << "::OpName {\n";
299297
OS << "enum {\n";
300298
for (const auto &Op : Operands)
301299
OS << " " << Op.first << " = " << Op.second << ",\n";
302300

303301
OS << " OPERAND_LAST";
304302
OS << "\n};\n";
305-
OS << "} // end namespace OpName\n";
306-
OS << "} // end namespace " << Namespace << "\n";
307-
OS << "} // end namespace llvm\n";
303+
OS << "} // end namespace llvm::" << Namespace << "::OpName\n";
308304
OS << "#endif //GET_INSTRINFO_OPERAND_ENUM\n\n";
309305

310306
OS << "#ifdef GET_INSTRINFO_NAMED_OPS\n";
311307
OS << "#undef GET_INSTRINFO_NAMED_OPS\n";
312-
OS << "namespace llvm {\n";
313-
OS << "namespace " << Namespace << " {\n";
308+
OS << "namespace llvm::" << Namespace << " {\n";
314309
OS << "LLVM_READONLY\n";
315310
OS << "int16_t getNamedOperandIdx(uint16_t Opcode, uint16_t NamedIdx) {\n";
316311
if (!Operands.empty()) {
@@ -343,8 +338,7 @@ void InstrInfoEmitter::emitOperandNameMappings(
343338
OS << " return -1;\n";
344339
}
345340
OS << "}\n";
346-
OS << "} // end namespace " << Namespace << "\n";
347-
OS << "} // end namespace llvm\n";
341+
OS << "} // end namespace llvm::" << Namespace << "\n";
348342
OS << "#endif //GET_INSTRINFO_NAMED_OPS\n\n";
349343
}
350344

@@ -365,9 +359,7 @@ void InstrInfoEmitter::emitOperandTypeMappings(
365359

366360
OS << "#ifdef GET_INSTRINFO_OPERAND_TYPES_ENUM\n";
367361
OS << "#undef GET_INSTRINFO_OPERAND_TYPES_ENUM\n";
368-
OS << "namespace llvm {\n";
369-
OS << "namespace " << Namespace << " {\n";
370-
OS << "namespace OpTypes {\n";
362+
OS << "namespace llvm::" << Namespace << "::OpTypes {\n";
371363
OS << "enum OperandType {\n";
372364

373365
unsigned EnumVal = 0;
@@ -382,15 +374,12 @@ void InstrInfoEmitter::emitOperandTypeMappings(
382374

383375
OS << " OPERAND_TYPE_LIST_END"
384376
<< "\n};\n";
385-
OS << "} // end namespace OpTypes\n";
386-
OS << "} // end namespace " << Namespace << "\n";
387-
OS << "} // end namespace llvm\n";
377+
OS << "} // end namespace llvm::" << Namespace << "::OpTypes\n";
388378
OS << "#endif // GET_INSTRINFO_OPERAND_TYPES_ENUM\n\n";
389379

390380
OS << "#ifdef GET_INSTRINFO_OPERAND_TYPE\n";
391381
OS << "#undef GET_INSTRINFO_OPERAND_TYPE\n";
392-
OS << "namespace llvm {\n";
393-
OS << "namespace " << Namespace << " {\n";
382+
OS << "namespace llvm::" << Namespace << " {\n";
394383
OS << "LLVM_READONLY\n";
395384
OS << "static int getOperandType(uint16_t Opcode, uint16_t OpIdx) {\n";
396385
auto getInstrName = [&](int I) -> StringRef {
@@ -465,14 +454,12 @@ void InstrInfoEmitter::emitOperandTypeMappings(
465454
OS << " llvm_unreachable(\"No instructions defined\");\n";
466455
}
467456
OS << "}\n";
468-
OS << "} // end namespace " << Namespace << "\n";
469-
OS << "} // end namespace llvm\n";
457+
OS << "} // end namespace llvm::" << Namespace << "\n";
470458
OS << "#endif // GET_INSTRINFO_OPERAND_TYPE\n\n";
471459

472460
OS << "#ifdef GET_INSTRINFO_MEM_OPERAND_SIZE\n";
473461
OS << "#undef GET_INSTRINFO_MEM_OPERAND_SIZE\n";
474-
OS << "namespace llvm {\n";
475-
OS << "namespace " << Namespace << " {\n";
462+
OS << "namespace llvm::" << Namespace << " {\n";
476463
OS << "LLVM_READONLY\n";
477464
OS << "static int getMemOperandSize(int OpType) {\n";
478465
OS << " switch (OpType) {\n";
@@ -490,8 +477,7 @@ void InstrInfoEmitter::emitOperandTypeMappings(
490477
OS << " return " << KV.first << ";\n\n";
491478
}
492479
OS << " }\n}\n";
493-
OS << "} // end namespace " << Namespace << "\n";
494-
OS << "} // end namespace llvm\n";
480+
OS << "} // end namespace llvm::" << Namespace << "\n";
495481
OS << "#endif // GET_INSTRINFO_MEM_OPERAND_SIZE\n\n";
496482
}
497483

@@ -526,8 +512,7 @@ void InstrInfoEmitter::emitLogicalOperandSizeMappings(
526512

527513
OS << "#ifdef GET_INSTRINFO_LOGICAL_OPERAND_SIZE_MAP\n";
528514
OS << "#undef GET_INSTRINFO_LOGICAL_OPERAND_SIZE_MAP\n";
529-
OS << "namespace llvm {\n";
530-
OS << "namespace " << Namespace << " {\n";
515+
OS << "namespace llvm::" << Namespace << " {\n";
531516
OS << "LLVM_READONLY static unsigned\n";
532517
OS << "getLogicalOperandSize(uint16_t Opcode, uint16_t LogicalOpIdx) {\n";
533518
if (!InstMap.empty()) {
@@ -577,8 +562,7 @@ void InstrInfoEmitter::emitLogicalOperandSizeMappings(
577562
OS << " return S;\n";
578563
OS << "}\n";
579564

580-
OS << "} // end namespace " << Namespace << "\n";
581-
OS << "} // end namespace llvm\n";
565+
OS << "} // end namespace llvm::" << Namespace << "\n";
582566
OS << "#endif // GET_INSTRINFO_LOGICAL_OPERAND_SIZE_MAP\n\n";
583567
}
584568

@@ -619,8 +603,7 @@ void InstrInfoEmitter::emitLogicalOperandTypeMappings(
619603

620604
OS << "#ifdef GET_INSTRINFO_LOGICAL_OPERAND_TYPE_MAP\n";
621605
OS << "#undef GET_INSTRINFO_LOGICAL_OPERAND_TYPE_MAP\n";
622-
OS << "namespace llvm {\n";
623-
OS << "namespace " << Namespace << " {\n";
606+
OS << "namespace llvm::" << Namespace << " {\n";
624607
OS << "LLVM_READONLY static int\n";
625608
OS << "getLogicalOperandType(uint16_t Opcode, uint16_t LogicalOpIdx) {\n";
626609
if (!InstMap.empty()) {
@@ -666,8 +649,7 @@ void InstrInfoEmitter::emitLogicalOperandTypeMappings(
666649
OS << " return -1;\n";
667650
}
668651
OS << "}\n";
669-
OS << "} // end namespace " << Namespace << "\n";
670-
OS << "} // end namespace llvm\n";
652+
OS << "} // end namespace llvm::" << Namespace << "\n";
671653
OS << "#endif // GET_INSTRINFO_LOGICAL_OPERAND_TYPE_MAP\n\n";
672654
}
673655

@@ -701,8 +683,7 @@ void InstrInfoEmitter::emitMCIIHelperMethods(raw_ostream &OS,
701683
OS << "#ifdef GET_INSTRINFO_MC_HELPERS\n";
702684
OS << "#undef GET_INSTRINFO_MC_HELPERS\n\n";
703685

704-
OS << "namespace llvm {\n";
705-
OS << "namespace " << TargetName << "_MC {\n\n";
686+
OS << "namespace llvm::" << TargetName << "_MC {\n";
706687

707688
PredicateExpander PE(TargetName);
708689
PE.setExpandForMC(true);
@@ -716,8 +697,7 @@ void InstrInfoEmitter::emitMCIIHelperMethods(raw_ostream &OS,
716697
OS << "\n}\n\n";
717698
}
718699

719-
OS << "} // end namespace " << TargetName << "_MC\n";
720-
OS << "} // end namespace llvm\n\n";
700+
OS << "} // end namespace llvm::" << TargetName << "_MC\n";
721701

722702
OS << "#endif // GET_GENISTRINFO_MC_HELPERS\n\n";
723703
}
@@ -743,8 +723,7 @@ void InstrInfoEmitter::emitFeatureVerifier(raw_ostream &OS,
743723
<< "#endif\n";
744724
OS << "#ifdef GET_COMPUTE_FEATURES\n"
745725
<< "#undef GET_COMPUTE_FEATURES\n"
746-
<< "namespace llvm {\n"
747-
<< "namespace " << Target.getName() << "_MC {\n\n";
726+
<< "namespace llvm::" << Target.getName() << "_MC {\n";
748727

749728
// Emit the subtarget feature enumeration.
750729
SubtargetFeatureInfo::emitSubtargetFeatureBitEnumeration(SubtargetFeatures,
@@ -827,14 +806,12 @@ void InstrInfoEmitter::emitFeatureVerifier(raw_ostream &OS,
827806
<< " return FeatureBitsets[RequiredFeaturesRefs[Opcode]];\n"
828807
<< "}\n\n";
829808

830-
OS << "} // end namespace " << Target.getName() << "_MC\n"
831-
<< "} // end namespace llvm\n"
809+
OS << "} // end namespace llvm::" << Target.getName() << "_MC\n"
832810
<< "#endif // GET_COMPUTE_FEATURES\n\n";
833811

834812
OS << "#ifdef GET_AVAILABLE_OPCODE_CHECKER\n"
835813
<< "#undef GET_AVAILABLE_OPCODE_CHECKER\n"
836-
<< "namespace llvm {\n"
837-
<< "namespace " << Target.getName() << "_MC {\n";
814+
<< "namespace llvm::" << Target.getName() << "_MC {\n";
838815
OS << "bool isOpcodeAvailable("
839816
<< "unsigned Opcode, const FeatureBitset &Features) {\n"
840817
<< " FeatureBitset AvailableFeatures = "
@@ -846,16 +823,14 @@ void InstrInfoEmitter::emitFeatureVerifier(raw_ostream &OS,
846823
<< " RequiredFeatures;\n"
847824
<< " return !MissingFeatures.any();\n"
848825
<< "}\n";
849-
OS << "} // end namespace " << Target.getName() << "_MC\n"
850-
<< "} // end namespace llvm\n"
826+
OS << "} // end namespace llvm::" << Target.getName() << "_MC\n"
851827
<< "#endif // GET_AVAILABLE_OPCODE_CHECKER\n\n";
852828

853829
OS << "#ifdef ENABLE_INSTR_PREDICATE_VERIFIER\n"
854830
<< "#undef ENABLE_INSTR_PREDICATE_VERIFIER\n"
855831
<< "#include <sstream>\n\n";
856832

857-
OS << "namespace llvm {\n";
858-
OS << "namespace " << Target.getName() << "_MC {\n\n";
833+
OS << "namespace llvm::" << Target.getName() << "_MC {\n";
859834

860835
// Emit the name table for error messages.
861836
OS << "#ifndef NDEBUG\n";
@@ -886,8 +861,7 @@ void InstrInfoEmitter::emitFeatureVerifier(raw_ostream &OS,
886861
<< " }\n"
887862
<< "#endif // NDEBUG\n";
888863
OS << "}\n";
889-
OS << "} // end namespace " << Target.getName() << "_MC\n";
890-
OS << "} // end namespace llvm\n";
864+
OS << "} // end namespace llvm::" << Target.getName() << "_MC\n";
891865
OS << "#endif // ENABLE_INSTR_PREDICATE_VERIFIER\n\n";
892866
}
893867

@@ -1318,42 +1292,35 @@ void InstrInfoEmitter::emitEnums(raw_ostream &OS) {
13181292
OS << "#ifdef GET_INSTRINFO_ENUM\n";
13191293
OS << "#undef GET_INSTRINFO_ENUM\n";
13201294

1321-
OS << "namespace llvm {\n\n";
1322-
13231295
const CodeGenTarget &Target = CDP.getTargetInfo();
1324-
1325-
// We must emit the PHI opcode first...
13261296
StringRef Namespace = Target.getInstNamespace();
13271297

13281298
if (Namespace.empty())
13291299
PrintFatalError("No instructions defined!");
13301300

1331-
OS << "namespace " << Namespace << " {\n";
1301+
OS << "namespace llvm::" << Namespace << " {\n";
1302+
1303+
// We must emit the PHI opcode first...
13321304
OS << " enum {\n";
13331305
unsigned Num = 0;
13341306
for (const CodeGenInstruction *Inst : Target.getInstructionsByEnumValue())
13351307
OS << " " << Inst->TheDef->getName()
13361308
<< "\t= " << (Num = Target.getInstrIntValue(Inst->TheDef)) << ",\n";
13371309
OS << " INSTRUCTION_LIST_END = " << Num + 1 << "\n";
13381310
OS << " };\n\n";
1339-
OS << "} // end namespace " << Namespace << "\n";
1340-
OS << "} // end namespace llvm\n";
1311+
OS << "} // end namespace llvm::" << Namespace << "\n";
13411312
OS << "#endif // GET_INSTRINFO_ENUM\n\n";
13421313

13431314
OS << "#ifdef GET_INSTRINFO_SCHED_ENUM\n";
13441315
OS << "#undef GET_INSTRINFO_SCHED_ENUM\n";
1345-
OS << "namespace llvm {\n\n";
1346-
OS << "namespace " << Namespace << " {\n";
1347-
OS << "namespace Sched {\n";
1316+
OS << "namespace llvm::" << Namespace << "::Sched {\n\n";
13481317
OS << " enum {\n";
13491318
Num = 0;
13501319
for (const auto &Class : SchedModels.explicit_classes())
13511320
OS << " " << Class.Name << "\t= " << Num++ << ",\n";
13521321
OS << " SCHED_LIST_END = " << Num << "\n";
13531322
OS << " };\n";
1354-
OS << "} // end namespace Sched\n";
1355-
OS << "} // end namespace " << Namespace << "\n";
1356-
OS << "} // end namespace llvm\n";
1323+
OS << "} // end namespace llvm::" << Namespace << "::Sched\n";
13571324

13581325
OS << "#endif // GET_INSTRINFO_SCHED_ENUM\n\n";
13591326
}

0 commit comments

Comments
 (0)