[llvm] fdd04e8 - WinCOFFObjectWriter: replace the MCAsmLayout parameter with MCAssembler
Fangrui Song via llvm-commits
llvm-commits at lists.llvm.org
Mon Jul 1 17:21:18 PDT 2024
Author: Fangrui Song
Date: 2024-07-01T17:21:14-07:00
New Revision: fdd04e8c0c8bf19384901e8104f0643c4537ad73
URL: https://github.com/llvm/llvm-project/commit/fdd04e8c0c8bf19384901e8104f0643c4537ad73
DIFF: https://github.com/llvm/llvm-project/commit/fdd04e8c0c8bf19384901e8104f0643c4537ad73.diff
LOG: WinCOFFObjectWriter: replace the MCAsmLayout parameter with MCAssembler
Added:
Modified:
llvm/lib/MC/WinCOFFObjectWriter.cpp
Removed:
################################################################################
diff --git a/llvm/lib/MC/WinCOFFObjectWriter.cpp b/llvm/lib/MC/WinCOFFObjectWriter.cpp
index cd209857c9038..c0bad192eb982 100644
--- a/llvm/lib/MC/WinCOFFObjectWriter.cpp
+++ b/llvm/lib/MC/WinCOFFObjectWriter.cpp
@@ -18,7 +18,6 @@
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/Twine.h"
#include "llvm/BinaryFormat/COFF.h"
-#include "llvm/MC/MCAsmLayout.h"
#include "llvm/MC/MCAssembler.h"
#include "llvm/MC/MCContext.h"
#include "llvm/MC/MCExpr.h"
@@ -188,15 +187,13 @@ class WinCOFFWriter {
void WriteAuxiliarySymbols(const COFFSymbol::AuxiliarySymbols &S);
void writeSectionHeaders();
void WriteRelocation(const COFF::relocation &R);
- uint32_t writeSectionContents(MCAssembler &Asm, const MCAsmLayout &Layout,
- const MCSection &MCSec);
- void writeSection(MCAssembler &Asm, const MCAsmLayout &Layout,
- const COFFSection &Sec);
+ uint32_t writeSectionContents(MCAssembler &Asm, const MCSection &MCSec);
+ void writeSection(MCAssembler &Asm, const COFFSection &Sec);
void createFileSymbols(MCAssembler &Asm);
void setWeakDefaultNames();
void assignSectionNumbers();
- void assignFileOffsets(MCAssembler &Asm, const MCAsmLayout &Layout);
+ void assignFileOffsets(MCAssembler &Asm);
};
class WinCOFFObjectWriter : public MCObjectWriter {
@@ -601,7 +598,6 @@ void WinCOFFWriter::WriteRelocation(const COFF::relocation &R) {
// "Asm.writeSectionData(&MCSec)", but it's a bit complicated
// because it needs to compute a CRC.
uint32_t WinCOFFWriter::writeSectionContents(MCAssembler &Asm,
- const MCAsmLayout &Layout,
const MCSection &MCSec) {
// Save the contents of the section to a temporary buffer, we need this
// to CRC the data before we dump it into the object file.
@@ -619,8 +615,7 @@ uint32_t WinCOFFWriter::writeSectionContents(MCAssembler &Asm,
return JC.getCRC();
}
-void WinCOFFWriter::writeSection(MCAssembler &Asm, const MCAsmLayout &Layout,
- const COFFSection &Sec) {
+void WinCOFFWriter::writeSection(MCAssembler &Asm, const COFFSection &Sec) {
if (Sec.Number == -1)
return;
@@ -629,7 +624,7 @@ void WinCOFFWriter::writeSection(MCAssembler &Asm, const MCAsmLayout &Layout,
assert(W.OS.tell() == Sec.Header.PointerToRawData &&
"Section::PointerToRawData is insane!");
- uint32_t CRC = writeSectionContents(Asm, Layout, *Sec.MCSection);
+ uint32_t CRC = writeSectionContents(Asm, *Sec.MCSection);
// Update the section definition auxiliary symbol to record the CRC.
COFFSymbol::AuxiliarySymbols &AuxSyms = Sec.Symbol->Aux;
@@ -761,8 +756,7 @@ void WinCOFFWriter::assignSectionNumbers() {
}
// Assign file offsets to COFF object file structures.
-void WinCOFFWriter::assignFileOffsets(MCAssembler &Asm,
- const MCAsmLayout &Layout) {
+void WinCOFFWriter::assignFileOffsets(MCAssembler &Asm) {
unsigned Offset = W.OS.tell();
Offset += UseBigObj ? COFF::Header32Size : COFF::Header16Size;
@@ -1127,7 +1121,7 @@ uint64_t WinCOFFWriter::writeObject(MCAssembler &Asm) {
}
}
- assignFileOffsets(Asm, *Asm.getLayout());
+ assignFileOffsets(Asm);
// MS LINK expects to be able to use this timestamp to implement their
// /INCREMENTAL feature.
@@ -1157,7 +1151,7 @@ uint64_t WinCOFFWriter::writeObject(MCAssembler &Asm) {
// Write section contents.
for (std::unique_ptr<COFFSection> &Sec : Sections)
- writeSection(Asm, *Asm.getLayout(), *Sec);
+ writeSection(Asm, *Sec);
assert(W.OS.tell() == Header.PointerToSymbolTable &&
"Header::PointerToSymbolTable is insane!");
More information about the llvm-commits
mailing list