@@ -283,7 +283,6 @@ void InstrInfoEmitter::emitOperandNameMappings(
283
283
raw_ostream &OS, const CodeGenTarget &Target,
284
284
ArrayRef<const CodeGenInstruction *> NumberedInstructions) {
285
285
StringRef Namespace = Target.getInstNamespace ();
286
- std::string OpNameNS = " OpName" ;
287
286
// Map of operand names to their enumeration value. This will be used to
288
287
// generate the OpName enum.
289
288
std::map<std::string, unsigned > Operands;
@@ -293,24 +292,19 @@ void InstrInfoEmitter::emitOperandNameMappings(
293
292
294
293
OS << " #ifdef GET_INSTRINFO_OPERAND_ENUM\n " ;
295
294
OS << " #undef GET_INSTRINFO_OPERAND_ENUM\n " ;
296
- OS << " namespace llvm {\n " ;
297
- OS << " namespace " << Namespace << " {\n " ;
298
- OS << " namespace " << OpNameNS << " {\n " ;
295
+ OS << " namespace llvm::" << Namespace << " ::OpName {\n " ;
299
296
OS << " enum {\n " ;
300
297
for (const auto &Op : Operands)
301
298
OS << " " << Op.first << " = " << Op.second << " ,\n " ;
302
299
303
300
OS << " OPERAND_LAST" ;
304
301
OS << " \n };\n " ;
305
- OS << " } // end namespace OpName\n " ;
306
- OS << " } // end namespace " << Namespace << " \n " ;
307
- OS << " } // end namespace llvm\n " ;
302
+ OS << " } // end namespace llvm::" << Namespace << " ::OpName\n " ;
308
303
OS << " #endif //GET_INSTRINFO_OPERAND_ENUM\n\n " ;
309
304
310
305
OS << " #ifdef GET_INSTRINFO_NAMED_OPS\n " ;
311
306
OS << " #undef GET_INSTRINFO_NAMED_OPS\n " ;
312
- OS << " namespace llvm {\n " ;
313
- OS << " namespace " << Namespace << " {\n " ;
307
+ OS << " namespace llvm::" << Namespace << " {\n " ;
314
308
OS << " LLVM_READONLY\n " ;
315
309
OS << " int16_t getNamedOperandIdx(uint16_t Opcode, uint16_t NamedIdx) {\n " ;
316
310
if (!Operands.empty ()) {
@@ -343,8 +337,7 @@ void InstrInfoEmitter::emitOperandNameMappings(
343
337
OS << " return -1;\n " ;
344
338
}
345
339
OS << " }\n " ;
346
- OS << " } // end namespace " << Namespace << " \n " ;
347
- OS << " } // end namespace llvm\n " ;
340
+ OS << " } // end namespace llvm::" << Namespace << " \n " ;
348
341
OS << " #endif //GET_INSTRINFO_NAMED_OPS\n\n " ;
349
342
}
350
343
@@ -365,9 +358,7 @@ void InstrInfoEmitter::emitOperandTypeMappings(
365
358
366
359
OS << " #ifdef GET_INSTRINFO_OPERAND_TYPES_ENUM\n " ;
367
360
OS << " #undef GET_INSTRINFO_OPERAND_TYPES_ENUM\n " ;
368
- OS << " namespace llvm {\n " ;
369
- OS << " namespace " << Namespace << " {\n " ;
370
- OS << " namespace OpTypes {\n " ;
361
+ OS << " namespace llvm::" << Namespace << " ::OpTypes {\n " ;
371
362
OS << " enum OperandType {\n " ;
372
363
373
364
unsigned EnumVal = 0 ;
@@ -382,15 +373,12 @@ void InstrInfoEmitter::emitOperandTypeMappings(
382
373
383
374
OS << " OPERAND_TYPE_LIST_END"
384
375
<< " \n };\n " ;
385
- OS << " } // end namespace OpTypes\n " ;
386
- OS << " } // end namespace " << Namespace << " \n " ;
387
- OS << " } // end namespace llvm\n " ;
376
+ OS << " } // end namespace llvm::" << Namespace << " ::OpTypes\n " ;
388
377
OS << " #endif // GET_INSTRINFO_OPERAND_TYPES_ENUM\n\n " ;
389
378
390
379
OS << " #ifdef GET_INSTRINFO_OPERAND_TYPE\n " ;
391
380
OS << " #undef GET_INSTRINFO_OPERAND_TYPE\n " ;
392
- OS << " namespace llvm {\n " ;
393
- OS << " namespace " << Namespace << " {\n " ;
381
+ OS << " namespace llvm::" << Namespace << " {\n " ;
394
382
OS << " LLVM_READONLY\n " ;
395
383
OS << " static int getOperandType(uint16_t Opcode, uint16_t OpIdx) {\n " ;
396
384
auto getInstrName = [&](int I) -> StringRef {
@@ -465,14 +453,12 @@ void InstrInfoEmitter::emitOperandTypeMappings(
465
453
OS << " llvm_unreachable(\" No instructions defined\" );\n " ;
466
454
}
467
455
OS << " }\n " ;
468
- OS << " } // end namespace " << Namespace << " \n " ;
469
- OS << " } // end namespace llvm\n " ;
456
+ OS << " } // end namespace llvm::" << Namespace << " \n " ;
470
457
OS << " #endif // GET_INSTRINFO_OPERAND_TYPE\n\n " ;
471
458
472
459
OS << " #ifdef GET_INSTRINFO_MEM_OPERAND_SIZE\n " ;
473
460
OS << " #undef GET_INSTRINFO_MEM_OPERAND_SIZE\n " ;
474
- OS << " namespace llvm {\n " ;
475
- OS << " namespace " << Namespace << " {\n " ;
461
+ OS << " namespace llvm::" << Namespace << " {\n " ;
476
462
OS << " LLVM_READONLY\n " ;
477
463
OS << " static int getMemOperandSize(int OpType) {\n " ;
478
464
OS << " switch (OpType) {\n " ;
@@ -490,8 +476,7 @@ void InstrInfoEmitter::emitOperandTypeMappings(
490
476
OS << " return " << KV.first << " ;\n\n " ;
491
477
}
492
478
OS << " }\n }\n " ;
493
- OS << " } // end namespace " << Namespace << " \n " ;
494
- OS << " } // end namespace llvm\n " ;
479
+ OS << " } // end namespace llvm::" << Namespace << " \n " ;
495
480
OS << " #endif // GET_INSTRINFO_MEM_OPERAND_SIZE\n\n " ;
496
481
}
497
482
@@ -526,8 +511,7 @@ void InstrInfoEmitter::emitLogicalOperandSizeMappings(
526
511
527
512
OS << " #ifdef GET_INSTRINFO_LOGICAL_OPERAND_SIZE_MAP\n " ;
528
513
OS << " #undef GET_INSTRINFO_LOGICAL_OPERAND_SIZE_MAP\n " ;
529
- OS << " namespace llvm {\n " ;
530
- OS << " namespace " << Namespace << " {\n " ;
514
+ OS << " namespace llvm::" << Namespace << " {\n " ;
531
515
OS << " LLVM_READONLY static unsigned\n " ;
532
516
OS << " getLogicalOperandSize(uint16_t Opcode, uint16_t LogicalOpIdx) {\n " ;
533
517
if (!InstMap.empty ()) {
@@ -577,8 +561,7 @@ void InstrInfoEmitter::emitLogicalOperandSizeMappings(
577
561
OS << " return S;\n " ;
578
562
OS << " }\n " ;
579
563
580
- OS << " } // end namespace " << Namespace << " \n " ;
581
- OS << " } // end namespace llvm\n " ;
564
+ OS << " } // end namespace llvm::" << Namespace << " \n " ;
582
565
OS << " #endif // GET_INSTRINFO_LOGICAL_OPERAND_SIZE_MAP\n\n " ;
583
566
}
584
567
@@ -619,8 +602,7 @@ void InstrInfoEmitter::emitLogicalOperandTypeMappings(
619
602
620
603
OS << " #ifdef GET_INSTRINFO_LOGICAL_OPERAND_TYPE_MAP\n " ;
621
604
OS << " #undef GET_INSTRINFO_LOGICAL_OPERAND_TYPE_MAP\n " ;
622
- OS << " namespace llvm {\n " ;
623
- OS << " namespace " << Namespace << " {\n " ;
605
+ OS << " namespace llvm::" << Namespace << " {\n " ;
624
606
OS << " LLVM_READONLY static int\n " ;
625
607
OS << " getLogicalOperandType(uint16_t Opcode, uint16_t LogicalOpIdx) {\n " ;
626
608
if (!InstMap.empty ()) {
@@ -666,8 +648,7 @@ void InstrInfoEmitter::emitLogicalOperandTypeMappings(
666
648
OS << " return -1;\n " ;
667
649
}
668
650
OS << " }\n " ;
669
- OS << " } // end namespace " << Namespace << " \n " ;
670
- OS << " } // end namespace llvm\n " ;
651
+ OS << " } // end namespace llvm::" << Namespace << " \n " ;
671
652
OS << " #endif // GET_INSTRINFO_LOGICAL_OPERAND_TYPE_MAP\n\n " ;
672
653
}
673
654
@@ -701,8 +682,7 @@ void InstrInfoEmitter::emitMCIIHelperMethods(raw_ostream &OS,
701
682
OS << " #ifdef GET_INSTRINFO_MC_HELPERS\n " ;
702
683
OS << " #undef GET_INSTRINFO_MC_HELPERS\n\n " ;
703
684
704
- OS << " namespace llvm {\n " ;
705
- OS << " namespace " << TargetName << " _MC {\n\n " ;
685
+ OS << " namespace llvm::" << TargetName << " _MC {\n " ;
706
686
707
687
PredicateExpander PE (TargetName);
708
688
PE.setExpandForMC (true );
@@ -716,8 +696,7 @@ void InstrInfoEmitter::emitMCIIHelperMethods(raw_ostream &OS,
716
696
OS << " \n }\n\n " ;
717
697
}
718
698
719
- OS << " } // end namespace " << TargetName << " _MC\n " ;
720
- OS << " } // end namespace llvm\n\n " ;
699
+ OS << " } // end namespace llvm::" << TargetName << " _MC\n " ;
721
700
722
701
OS << " #endif // GET_GENISTRINFO_MC_HELPERS\n\n " ;
723
702
}
@@ -743,8 +722,7 @@ void InstrInfoEmitter::emitFeatureVerifier(raw_ostream &OS,
743
722
<< " #endif\n " ;
744
723
OS << " #ifdef GET_COMPUTE_FEATURES\n "
745
724
<< " #undef GET_COMPUTE_FEATURES\n "
746
- << " namespace llvm {\n "
747
- << " namespace " << Target.getName () << " _MC {\n\n " ;
725
+ << " namespace llvm::" << Target.getName () << " _MC {\n " ;
748
726
749
727
// Emit the subtarget feature enumeration.
750
728
SubtargetFeatureInfo::emitSubtargetFeatureBitEnumeration (SubtargetFeatures,
@@ -827,14 +805,12 @@ void InstrInfoEmitter::emitFeatureVerifier(raw_ostream &OS,
827
805
<< " return FeatureBitsets[RequiredFeaturesRefs[Opcode]];\n "
828
806
<< " }\n\n " ;
829
807
830
- OS << " } // end namespace " << Target.getName () << " _MC\n "
831
- << " } // end namespace llvm\n "
808
+ OS << " } // end namespace llvm::" << Target.getName () << " _MC\n "
832
809
<< " #endif // GET_COMPUTE_FEATURES\n\n " ;
833
810
834
811
OS << " #ifdef GET_AVAILABLE_OPCODE_CHECKER\n "
835
812
<< " #undef GET_AVAILABLE_OPCODE_CHECKER\n "
836
- << " namespace llvm {\n "
837
- << " namespace " << Target.getName () << " _MC {\n " ;
813
+ << " namespace llvm::" << Target.getName () << " _MC {\n " ;
838
814
OS << " bool isOpcodeAvailable("
839
815
<< " unsigned Opcode, const FeatureBitset &Features) {\n "
840
816
<< " FeatureBitset AvailableFeatures = "
@@ -846,16 +822,14 @@ void InstrInfoEmitter::emitFeatureVerifier(raw_ostream &OS,
846
822
<< " RequiredFeatures;\n "
847
823
<< " return !MissingFeatures.any();\n "
848
824
<< " }\n " ;
849
- OS << " } // end namespace " << Target.getName () << " _MC\n "
850
- << " } // end namespace llvm\n "
825
+ OS << " } // end namespace llvm::" << Target.getName () << " _MC\n "
851
826
<< " #endif // GET_AVAILABLE_OPCODE_CHECKER\n\n " ;
852
827
853
828
OS << " #ifdef ENABLE_INSTR_PREDICATE_VERIFIER\n "
854
829
<< " #undef ENABLE_INSTR_PREDICATE_VERIFIER\n "
855
830
<< " #include <sstream>\n\n " ;
856
831
857
- OS << " namespace llvm {\n " ;
858
- OS << " namespace " << Target.getName () << " _MC {\n\n " ;
832
+ OS << " namespace llvm::" << Target.getName () << " _MC {\n " ;
859
833
860
834
// Emit the name table for error messages.
861
835
OS << " #ifndef NDEBUG\n " ;
@@ -886,8 +860,7 @@ void InstrInfoEmitter::emitFeatureVerifier(raw_ostream &OS,
886
860
<< " }\n "
887
861
<< " #endif // NDEBUG\n " ;
888
862
OS << " }\n " ;
889
- OS << " } // end namespace " << Target.getName () << " _MC\n " ;
890
- OS << " } // end namespace llvm\n " ;
863
+ OS << " } // end namespace llvm::" << Target.getName () << " _MC\n " ;
891
864
OS << " #endif // ENABLE_INSTR_PREDICATE_VERIFIER\n\n " ;
892
865
}
893
866
@@ -1318,42 +1291,34 @@ void InstrInfoEmitter::emitEnums(raw_ostream &OS) {
1318
1291
OS << " #ifdef GET_INSTRINFO_ENUM\n " ;
1319
1292
OS << " #undef GET_INSTRINFO_ENUM\n " ;
1320
1293
1321
- OS << " namespace llvm {\n\n " ;
1322
-
1323
1294
const CodeGenTarget &Target = CDP.getTargetInfo ();
1324
-
1325
- // We must emit the PHI opcode first...
1326
1295
StringRef Namespace = Target.getInstNamespace ();
1327
1296
1328
1297
if (Namespace.empty ())
1329
1298
PrintFatalError (" No instructions defined!" );
1330
1299
1331
- OS << " namespace " << Namespace << " {\n " ;
1300
+ OS << " namespace llvm::" << Namespace << " {\n " ;
1301
+
1332
1302
OS << " enum {\n " ;
1333
1303
unsigned Num = 0 ;
1334
1304
for (const CodeGenInstruction *Inst : Target.getInstructionsByEnumValue ())
1335
1305
OS << " " << Inst->TheDef ->getName ()
1336
1306
<< " \t = " << (Num = Target.getInstrIntValue (Inst->TheDef )) << " ,\n " ;
1337
1307
OS << " INSTRUCTION_LIST_END = " << Num + 1 << " \n " ;
1338
1308
OS << " };\n\n " ;
1339
- OS << " } // end namespace " << Namespace << " \n " ;
1340
- OS << " } // end namespace llvm\n " ;
1309
+ OS << " } // end namespace llvm::" << Namespace << " \n " ;
1341
1310
OS << " #endif // GET_INSTRINFO_ENUM\n\n " ;
1342
1311
1343
1312
OS << " #ifdef GET_INSTRINFO_SCHED_ENUM\n " ;
1344
1313
OS << " #undef GET_INSTRINFO_SCHED_ENUM\n " ;
1345
- OS << " namespace llvm {\n\n " ;
1346
- OS << " namespace " << Namespace << " {\n " ;
1347
- OS << " namespace Sched {\n " ;
1314
+ OS << " namespace llvm::" << Namespace << " ::Sched {\n\n " ;
1348
1315
OS << " enum {\n " ;
1349
1316
Num = 0 ;
1350
1317
for (const auto &Class : SchedModels.explicit_classes ())
1351
1318
OS << " " << Class.Name << " \t = " << Num++ << " ,\n " ;
1352
1319
OS << " SCHED_LIST_END = " << Num << " \n " ;
1353
1320
OS << " };\n " ;
1354
- OS << " } // end namespace Sched\n " ;
1355
- OS << " } // end namespace " << Namespace << " \n " ;
1356
- OS << " } // end namespace llvm\n " ;
1321
+ OS << " } // end namespace llvm::" << Namespace << " ::Sched\n " ;
1357
1322
1358
1323
OS << " #endif // GET_INSTRINFO_SCHED_ENUM\n\n " ;
1359
1324
}
0 commit comments