[PATCH] D79467: [PDB] Optimize public symbol processing
Mikael Holmén via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed May 13 02:39:18 PDT 2020
uabelho added inline comments.
================
Comment at: llvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp:93
+namespace {
+LLVM_PACKED(struct PublicSym32Layout {
+ RecordPrefix Prefix;
----------------
abhinavgaba wrote:
> This is causing the following warnings:
> ```
> ignoring packed attribute because of unpacked non-POD field ‘llvm::codeview::RecordPrefix {anonymous}::PublicSym32Layout::Prefix’
> RecordPrefix Prefix;
> ^
> ...
> ignoring packed attribute because of unpacked non-POD field ‘llvm::codeview::PublicSym32Header {anonymous}::PublicSym32Layout::Pub’
> PublicSym32Header Pub;
> ^
>
>
> ```
We see this too, we're using gcc 7.4.0 when compiling clang.
We did some small experiments and the struct does get different sizes when compiled with clang vs gcc which might be a problem?
With LLVM_PACKED_START/LLVM_PACKED_END around PublicSym32Layout instead of LLVM_PACKED the struct seems to get packed both with clang and gcc so perhaps that's a solution?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D79467/new/
https://reviews.llvm.org/D79467
More information about the llvm-commits
mailing list