Skip to content

Conversation

@jurahul
Copy link
Contributor

@jurahul jurahul commented Nov 18, 2025

  • Add declarations of various MCAsmParserExtension creation functions to MCAsmParserExtension.h and use namespace qualifiers to define these and some other functions.
  • Add end of namespace comments.
  • Fix indentation of MCNullStreamer class.
  • Remove namespace surrounding code in MCWinEH.cpp and use "using namespace" instead.

@github-actions
Copy link

🐧 Linux x64 Test Results

  • 186345 tests passed
  • 4855 tests skipped

@jurahul jurahul marked this pull request as ready for review November 19, 2025 00:35
@llvmbot llvmbot added backend:WebAssembly llvm:mc Machine (object) code labels Nov 19, 2025
@llvmbot
Copy link
Member

llvmbot commented Nov 19, 2025

@llvm/pr-subscribers-llvm-mc

@llvm/pr-subscribers-backend-webassembly

Author: Rahul Joshi (jurahul)

Changes
  • Add declarations of various MCAsmParserExtension creation functions to MCAsmParserExtension.h and use namespace qualifiers to define these and some other functions.
  • Add end of namespace comments.
  • Fix indentation of MCNullStreamer class.
  • Remove namespace surrounding code in MCWinEH.cpp and use "using namespace" instead.

Full diff: https://github.com/llvm/llvm-project/pull/168627.diff

16 Files Affected:

  • (modified) llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h (+8)
  • (modified) llvm/include/llvm/MC/MCWin64EH.h (+2-2)
  • (modified) llvm/include/llvm/MC/MCWinEH.h (+2-2)
  • (modified) llvm/lib/MC/MCDisassembler/MCExternalSymbolizer.cpp (+5-6)
  • (modified) llvm/lib/MC/MCNullStreamer.cpp (+27-28)
  • (modified) llvm/lib/MC/MCParser/AsmParser.cpp (+5-16)
  • (modified) llvm/lib/MC/MCParser/COFFAsmParser.cpp (+1-7)
  • (modified) llvm/lib/MC/MCParser/COFFMasmParser.cpp (+3-5)
  • (modified) llvm/lib/MC/MCParser/DarwinAsmParser.cpp (+1-5)
  • (modified) llvm/lib/MC/MCParser/ELFAsmParser.cpp (+1-7)
  • (modified) llvm/lib/MC/MCParser/GOFFAsmParser.cpp (+1-5)
  • (modified) llvm/lib/MC/MCParser/MasmParser.cpp (-2)
  • (modified) llvm/lib/MC/MCParser/WasmAsmParser.cpp (+1-7)
  • (modified) llvm/lib/MC/MCParser/XCOFFAsmParser.cpp (+4-6)
  • (modified) llvm/lib/MC/MCWin64EH.cpp (+5-3)
  • (modified) llvm/lib/MC/MCWinEH.cpp (+2-6)
diff --git a/llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h b/llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h
index f8387d888fc21..66fd28827065b 100644
--- a/llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h
+++ b/llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h
@@ -120,6 +120,14 @@ class LLVM_ABI MCAsmParserExtension {
   /// @}
 };
 
+MCAsmParserExtension *createDarwinAsmParser();
+MCAsmParserExtension *createELFAsmParser();
+MCAsmParserExtension *createCOFFAsmParser();
+MCAsmParserExtension *createCOFFMasmParser();
+MCAsmParserExtension *createGOFFAsmParser();
+MCAsmParserExtension *createXCOFFAsmParser();
+MCAsmParserExtension *createWasmAsmParser();
+
 } // end namespace llvm
 
 #endif // LLVM_MC_MCPARSER_MCASMPARSEREXTENSION_H
diff --git a/llvm/include/llvm/MC/MCWin64EH.h b/llvm/include/llvm/MC/MCWin64EH.h
index 622a666b78dd2..f9af9857d6867 100644
--- a/llvm/include/llvm/MC/MCWin64EH.h
+++ b/llvm/include/llvm/MC/MCWin64EH.h
@@ -70,7 +70,7 @@ class ARM64UnwindEmitter : public WinEH::UnwindEmitter {
   void EmitUnwindInfo(MCStreamer &Streamer, WinEH::FrameInfo *FI,
                       bool HandlerData) const override;
 };
-}
-} // end namespace llvm
+} // namespace Win64EH
+} // namespace llvm
 
 #endif
diff --git a/llvm/include/llvm/MC/MCWinEH.h b/llvm/include/llvm/MC/MCWinEH.h
index 1bbfb9f59bc4c..b3d5c9cc8620a 100644
--- a/llvm/include/llvm/MC/MCWinEH.h
+++ b/llvm/include/llvm/MC/MCWinEH.h
@@ -113,7 +113,7 @@ class LLVM_ABI UnwindEmitter {
   virtual void EmitUnwindInfo(MCStreamer &Streamer, FrameInfo *FI,
                               bool HandlerData) const = 0;
 };
-}
-}
+} // namespace WinEH
+} // namespace llvm
 
 #endif
diff --git a/llvm/lib/MC/MCDisassembler/MCExternalSymbolizer.cpp b/llvm/lib/MC/MCDisassembler/MCExternalSymbolizer.cpp
index 52cf1ff1376d0..f0d6718bd2dfa 100644
--- a/llvm/lib/MC/MCDisassembler/MCExternalSymbolizer.cpp
+++ b/llvm/lib/MC/MCDisassembler/MCExternalSymbolizer.cpp
@@ -183,14 +183,13 @@ void MCExternalSymbolizer::tryAddingPcLoadReferenceComment(raw_ostream &cStream,
   }
 }
 
-namespace llvm {
-MCSymbolizer *createMCSymbolizer(const Triple &TT, LLVMOpInfoCallback GetOpInfo,
-                                 LLVMSymbolLookupCallback SymbolLookUp,
-                                 void *DisInfo, MCContext *Ctx,
-                                 std::unique_ptr<MCRelocationInfo> &&RelInfo) {
+MCSymbolizer *
+llvm::createMCSymbolizer(const Triple &TT, LLVMOpInfoCallback GetOpInfo,
+                         LLVMSymbolLookupCallback SymbolLookUp, void *DisInfo,
+                         MCContext *Ctx,
+                         std::unique_ptr<MCRelocationInfo> &&RelInfo) {
   assert(Ctx && "No MCContext given for symbolic disassembly");
 
   return new MCExternalSymbolizer(*Ctx, std::move(RelInfo), GetOpInfo,
                                   SymbolLookUp, DisInfo);
 }
-}
diff --git a/llvm/lib/MC/MCNullStreamer.cpp b/llvm/lib/MC/MCNullStreamer.cpp
index e80cf37af3e8e..651d4b8f37791 100644
--- a/llvm/lib/MC/MCNullStreamer.cpp
+++ b/llvm/lib/MC/MCNullStreamer.cpp
@@ -20,34 +20,33 @@ using namespace llvm;
 
 namespace {
 
-  class MCNullStreamer : public MCStreamer {
-  public:
-    MCNullStreamer(MCContext &Context) : MCStreamer(Context) {}
-
-    /// @name MCStreamer Interface
-    /// @{
-
-    bool hasRawTextSupport() const override { return true; }
-    void emitRawTextImpl(StringRef String) override {}
-
-    bool emitSymbolAttribute(MCSymbol *Symbol,
-                             MCSymbolAttr Attribute) override {
-      return true;
-    }
-
-    void emitCommonSymbol(MCSymbol *Symbol, uint64_t Size,
-                          Align ByteAlignment) override {}
-    void emitSubsectionsViaSymbols() override {};
-    void beginCOFFSymbolDef(const MCSymbol *Symbol) override {}
-    void emitCOFFSymbolStorageClass(int StorageClass) override {}
-    void emitCOFFSymbolType(int Type) override {}
-    void endCOFFSymbolDef() override {}
-    void
-    emitXCOFFSymbolLinkageWithVisibility(MCSymbol *Symbol, MCSymbolAttr Linkage,
-                                         MCSymbolAttr Visibility) override {}
-  };
-
-}
+class MCNullStreamer : public MCStreamer {
+public:
+  MCNullStreamer(MCContext &Context) : MCStreamer(Context) {}
+
+  /// @name MCStreamer Interface
+  /// @{
+
+  bool hasRawTextSupport() const override { return true; }
+  void emitRawTextImpl(StringRef String) override {}
+
+  bool emitSymbolAttribute(MCSymbol *Symbol, MCSymbolAttr Attribute) override {
+    return true;
+  }
+
+  void emitCommonSymbol(MCSymbol *Symbol, uint64_t Size,
+                        Align ByteAlignment) override {}
+  void emitSubsectionsViaSymbols() override {};
+  void beginCOFFSymbolDef(const MCSymbol *Symbol) override {}
+  void emitCOFFSymbolStorageClass(int StorageClass) override {}
+  void emitCOFFSymbolType(int Type) override {}
+  void endCOFFSymbolDef() override {}
+  void emitXCOFFSymbolLinkageWithVisibility(MCSymbol *Symbol,
+                                            MCSymbolAttr Linkage,
+                                            MCSymbolAttr Visibility) override {}
+};
+
+} // namespace
 
 MCStreamer *llvm::createNullStreamer(MCContext &Context) {
   return new MCNullStreamer(Context);
diff --git a/llvm/lib/MC/MCParser/AsmParser.cpp b/llvm/lib/MC/MCParser/AsmParser.cpp
index c9cce7d69cc01..429cdae1fa1b6 100644
--- a/llvm/lib/MC/MCParser/AsmParser.cpp
+++ b/llvm/lib/MC/MCParser/AsmParser.cpp
@@ -739,13 +739,6 @@ namespace llvm {
 
 extern cl::opt<unsigned> AsmMacroMaxNestingDepth;
 
-extern MCAsmParserExtension *createDarwinAsmParser();
-extern MCAsmParserExtension *createELFAsmParser();
-extern MCAsmParserExtension *createCOFFAsmParser();
-extern MCAsmParserExtension *createGOFFAsmParser();
-extern MCAsmParserExtension *createXCOFFAsmParser();
-extern MCAsmParserExtension *createWasmAsmParser();
-
 } // end namespace llvm
 
 AsmParser::AsmParser(SourceMgr &SM, MCContext &Ctx, MCStreamer &Out,
@@ -6270,12 +6263,11 @@ bool HLASMAsmParser::parseStatement(ParseStatementInfo &Info,
   return parseAsMachineInstruction(Info, SI);
 }
 
-namespace llvm {
-namespace MCParserUtils {
-
-bool parseAssignmentExpression(StringRef Name, bool allow_redef,
-                               MCAsmParser &Parser, MCSymbol *&Sym,
-                               const MCExpr *&Value) {
+bool llvm::MCParserUtils::parseAssignmentExpression(StringRef Name,
+                                                    bool allow_redef,
+                                                    MCAsmParser &Parser,
+                                                    MCSymbol *&Sym,
+                                                    const MCExpr *&Value) {
 
   // FIXME: Use better location, we should use proper tokens.
   SMLoc EqualLoc = Parser.getTok().getLoc();
@@ -6312,9 +6304,6 @@ bool parseAssignmentExpression(StringRef Name, bool allow_redef,
   return false;
 }
 
-} // end namespace MCParserUtils
-} // end namespace llvm
-
 /// Create an MCAsmParser instance.
 MCAsmParser *llvm::createMCAsmParser(SourceMgr &SM, MCContext &C,
                                      MCStreamer &Out, const MCAsmInfo &MAI,
diff --git a/llvm/lib/MC/MCParser/COFFAsmParser.cpp b/llvm/lib/MC/MCParser/COFFAsmParser.cpp
index 2a796fb1cfe11..d9ec04c6b6100 100644
--- a/llvm/lib/MC/MCParser/COFFAsmParser.cpp
+++ b/llvm/lib/MC/MCParser/COFFAsmParser.cpp
@@ -796,10 +796,4 @@ bool COFFAsmParser::parseAtUnwindOrAtExcept(bool &unwind, bool &except) {
   return false;
 }
 
-namespace llvm {
-
-MCAsmParserExtension *createCOFFAsmParser() {
-  return new COFFAsmParser;
-}
-
-} // end namespace llvm
+MCAsmParserExtension *llvm::createCOFFAsmParser() { return new COFFAsmParser; }
diff --git a/llvm/lib/MC/MCParser/COFFMasmParser.cpp b/llvm/lib/MC/MCParser/COFFMasmParser.cpp
index 6e685c60a406e..db796a3ad2ed8 100644
--- a/llvm/lib/MC/MCParser/COFFMasmParser.cpp
+++ b/llvm/lib/MC/MCParser/COFFMasmParser.cpp
@@ -535,8 +535,6 @@ bool COFFMasmParser::parseSEHDirectiveEndProlog(StringRef Directive,
   return false;
 }
 
-namespace llvm {
-
-MCAsmParserExtension *createCOFFMasmParser() { return new COFFMasmParser; }
-
-} // end namespace llvm
+MCAsmParserExtension *llvm::createCOFFMasmParser() {
+  return new COFFMasmParser;
+}
diff --git a/llvm/lib/MC/MCParser/DarwinAsmParser.cpp b/llvm/lib/MC/MCParser/DarwinAsmParser.cpp
index fceb718d091c9..c4c4c5eab2224 100644
--- a/llvm/lib/MC/MCParser/DarwinAsmParser.cpp
+++ b/llvm/lib/MC/MCParser/DarwinAsmParser.cpp
@@ -1192,10 +1192,6 @@ bool DarwinAsmParser::parseDirectiveCGProfile(StringRef S, SMLoc Loc) {
   return MCAsmParserExtension::parseDirectiveCGProfile(S, Loc);
 }
 
-namespace llvm {
-
-MCAsmParserExtension *createDarwinAsmParser() {
+MCAsmParserExtension *llvm::createDarwinAsmParser() {
   return new DarwinAsmParser;
 }
-
-} // end llvm namespace
diff --git a/llvm/lib/MC/MCParser/ELFAsmParser.cpp b/llvm/lib/MC/MCParser/ELFAsmParser.cpp
index c3faab89bb258..6c51d6b7e6ff0 100644
--- a/llvm/lib/MC/MCParser/ELFAsmParser.cpp
+++ b/llvm/lib/MC/MCParser/ELFAsmParser.cpp
@@ -887,10 +887,4 @@ bool ELFAsmParser::parseDirectiveCGProfile(StringRef S, SMLoc Loc) {
   return MCAsmParserExtension::parseDirectiveCGProfile(S, Loc);
 }
 
-namespace llvm {
-
-MCAsmParserExtension *createELFAsmParser() {
-  return new ELFAsmParser;
-}
-
-} // end namespace llvm
+MCAsmParserExtension *llvm::createELFAsmParser() { return new ELFAsmParser; }
diff --git a/llvm/lib/MC/MCParser/GOFFAsmParser.cpp b/llvm/lib/MC/MCParser/GOFFAsmParser.cpp
index c3fc046072735..1118d7396d522 100644
--- a/llvm/lib/MC/MCParser/GOFFAsmParser.cpp
+++ b/llvm/lib/MC/MCParser/GOFFAsmParser.cpp
@@ -32,8 +32,4 @@ class GOFFAsmParser : public MCAsmParserExtension {
 
 } // namespace
 
-namespace llvm {
-
-MCAsmParserExtension *createGOFFAsmParser() { return new GOFFAsmParser; }
-
-} // namespace llvm
+MCAsmParserExtension *llvm::createGOFFAsmParser() { return new GOFFAsmParser; }
diff --git a/llvm/lib/MC/MCParser/MasmParser.cpp b/llvm/lib/MC/MCParser/MasmParser.cpp
index 3a85770a2783d..7b6ec4d6950e6 100644
--- a/llvm/lib/MC/MCParser/MasmParser.cpp
+++ b/llvm/lib/MC/MCParser/MasmParser.cpp
@@ -963,8 +963,6 @@ namespace llvm {
 
 extern cl::opt<unsigned> AsmMacroMaxNestingDepth;
 
-extern MCAsmParserExtension *createCOFFMasmParser();
-
 } // end namespace llvm
 
 enum { DEFAULT_ADDRSPACE = 0 };
diff --git a/llvm/lib/MC/MCParser/WasmAsmParser.cpp b/llvm/lib/MC/MCParser/WasmAsmParser.cpp
index 75e8948f8ce9e..d210622ccd68e 100644
--- a/llvm/lib/MC/MCParser/WasmAsmParser.cpp
+++ b/llvm/lib/MC/MCParser/WasmAsmParser.cpp
@@ -309,10 +309,4 @@ class WasmAsmParser : public MCAsmParserExtension {
 
 } // end anonymous namespace
 
-namespace llvm {
-
-MCAsmParserExtension *createWasmAsmParser() {
-  return new WasmAsmParser;
-}
-
-} // end namespace llvm
+MCAsmParserExtension *llvm::createWasmAsmParser() { return new WasmAsmParser; }
diff --git a/llvm/lib/MC/MCParser/XCOFFAsmParser.cpp b/llvm/lib/MC/MCParser/XCOFFAsmParser.cpp
index 90d6a1d867a6c..9b933d7676f81 100644
--- a/llvm/lib/MC/MCParser/XCOFFAsmParser.cpp
+++ b/llvm/lib/MC/MCParser/XCOFFAsmParser.cpp
@@ -43,14 +43,12 @@ class XCOFFAsmParser : public MCAsmParserExtension {
 
 } // end anonymous namespace
 
-namespace llvm {
-
-MCAsmParserExtension *createXCOFFAsmParser() { return new XCOFFAsmParser; }
-
-} // end namespace llvm
-
 // .csect QualName [, Number ]
 bool XCOFFAsmParser::ParseDirectiveCSect(StringRef, SMLoc) {
   report_fatal_error("XCOFFAsmParser directive not yet supported!");
   return false;
 }
+
+MCAsmParserExtension *llvm::createXCOFFAsmParser() {
+  return new XCOFFAsmParser;
+}
diff --git a/llvm/lib/MC/MCWin64EH.cpp b/llvm/lib/MC/MCWin64EH.cpp
index 8111ccb8bc69c..6d146f6cedd6e 100644
--- a/llvm/lib/MC/MCWin64EH.cpp
+++ b/llvm/lib/MC/MCWin64EH.cpp
@@ -19,7 +19,11 @@
 
 namespace llvm {
 class MCSection;
+}
+
+using namespace llvm;
 
+namespace {
 /// MCExpr that represents the epilog unwind code in an unwind table.
 class MCUnwindV2EpilogTargetExpr final : public MCTargetExpr {
   const MCSymbol *Function;
@@ -60,9 +64,7 @@ class MCUnwindV2EpilogTargetExpr final : public MCTargetExpr {
     return UnwindV2Start->getFragment();
   }
 };
-}
-
-using namespace llvm;
+} // namespace
 
 // NOTE: All relocations generated here are 4-byte image-relative.
 
diff --git a/llvm/lib/MC/MCWinEH.cpp b/llvm/lib/MC/MCWinEH.cpp
index 1a6d5a3b562ed..c5f0b95dc10ff 100644
--- a/llvm/lib/MC/MCWinEH.cpp
+++ b/llvm/lib/MC/MCWinEH.cpp
@@ -8,11 +8,7 @@
 
 #include "llvm/MC/MCWinEH.h"
 
-namespace llvm {
-namespace WinEH {
+using namespace llvm;
+using namespace WinEH;
 
 UnwindEmitter::~UnwindEmitter() = default;
-
-}
-}
-

Copy link
Member

@lenary lenary left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jurahul jurahul merged commit 4f3d68a into llvm:main Nov 19, 2025
15 checks passed
@jurahul jurahul deleted the nfc_ns_cleanup_mc branch November 19, 2025 15:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend:WebAssembly llvm:mc Machine (object) code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants