@@ -341,8 +341,6 @@ emitGetOperandIdxName(raw_ostream &OS,
341341void InstrInfoEmitter::emitOperandNameMappings (
342342 raw_ostream &OS, const CodeGenTarget &Target,
343343 ArrayRef<const CodeGenInstruction *> TargetInstructions) {
344- StringRef Namespace = Target.getInstNamespace ();
345-
346344 // Map of operand names to their ID.
347345 MapVector<StringRef, unsigned > OperandNameToID;
348346
@@ -383,10 +381,10 @@ void InstrInfoEmitter::emitOperandNameMappings(
383381 const size_t NumOperandNames = OperandNameToID.size ();
384382 const unsigned MaxNumOperands = MaxOperandNo + 1 ;
385383
386- const std::string LlvmNamespace = ( " llvm::" + Namespace). str ( );
384+ const SmallString< 32 > Namespace ({ " llvm::" , Target. getInstNamespace ()} );
387385 {
388386 IfDefEmitter IfDef (OS, " GET_INSTRINFO_OPERAND_ENUM" );
389- NamespaceEmitter NS (OS, LlvmNamespace );
387+ NamespaceEmitter NS (OS, Namespace );
390388
391389 assert (NumOperandNames <= UINT16_MAX &&
392390 " Too many operands for the operand index -> name table" );
@@ -405,7 +403,7 @@ void InstrInfoEmitter::emitOperandNameMappings(
405403
406404 {
407405 IfDefEmitter IfDef (OS, " GET_INSTRINFO_NAMED_OPS" );
408- NamespaceEmitter NS (OS, LlvmNamespace );
406+ NamespaceEmitter NS (OS, Namespace );
409407 emitGetInstructionIndexForOpLookup (OS, OperandMap, InstructionIndex);
410408
411409 emitGetNamedOperandIdx (OS, OperandMap, MaxOperandNo, NumOperandNames);
0 commit comments