[PATCH] D49678: [llvm-objcopy] Adding support for compressed DWARF debug sections.

Jordan Rupprecht via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 6 17:52:13 PDT 2018


rupprecht added a comment.

In https://reviews.llvm.org/D49678#1226534, @plotfi wrote:

> In https://reviews.llvm.org/D49678#1222836, @chandlerc wrote:
>
> > Reverted temporarily in r341360 to unbreak my build and the aarch64 build bot. Let me know if I can help with the investigation in any way.
>
>
> @jakehehrlich @chandlerc I need help reproing this. I finally got an aarch64 setup up and running and the tests pass. I don't understand why this would fail.


Looks like I'm able to repro this on my machine. (I hit it while I was running my own objcopy tests and happened to be synced to when this was recommitted). I can work with you on this.

I'm wrapping up for the day so I don't have time to go much further, but one thing I did notice that was really funny is there are multiple sections with the same name, e.g. for compress-debug-sections-zlib.test.tmp-compressed.o:

  Section {
    Index: 1
    Name: .debug_foo (20)
    Type: SHT_PROGBITS (0x1)
    Flags [ (0x0)
    ]
    Address: 0x0
    Offset: 0x40
    Size: 8
    Link: 0
    Info: 0
    AddressAlignment: 0
    EntrySize: 0
  }
  Section {
    Index: 2
    Name: .debug_foo (20)
    Type: SHT_PROGBITS (0x1)
    Flags [ (0x800)
      SHF_COMPRESSED (0x800)
    ]
    Address: 0x0
    Offset: 0x48
    Size: 35
    Link: 0
    Info: 0
    AddressAlignment: 8
    EntrySize: 0
  }

In other words, the FileCheck test that .debug_foo has the SHF_COMPRESSED flag is matching the wrong one. (Of course, it's not FileCheck that's wrong, it's the fact that there are somehow two sections with the same name).

I don't think there's anything unique about my machine setup... it's just a regular x86-64 linux machine, cmake is configured to use a near-head clang to build things... I hope to have time to take a closer look at this tomorrow.


Repository:
  rL LLVM

https://reviews.llvm.org/D49678





More information about the llvm-commits mailing list