diff options
-rw-r--r-- | llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp b/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp index 78e5f5d215b..4132b1a30c4 100644 --- a/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp @@ -2831,8 +2831,10 @@ MCSymbol *CodeViewDebug::beginSymbolRecord(SymbolKind SymKind) { } void CodeViewDebug::endSymbolRecord(MCSymbol *SymEnd) { - // Symbol records in object files are not aligned, although we are considering - // it for linker performance reasons. + // MSVC does not pad out symbol records to four bytes, but LLVM does to avoid + // an extra copy of every symbol record in LLD. This increases object file + // size by less than 1% in the clang build, and is compatible with the Visual + // C++ linker. OS.EmitValueToAlignment(4); OS.EmitLabel(SymEnd); } |