This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: FAIL: Link with zlib-gabi compressed debug output
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: Jan Beulich <JBeulich at suse dot com>
- Cc: Binutils <binutils at sourceware dot org>
- Date: Mon, 7 Dec 2015 08:00:39 -0800
- Subject: Re: FAIL: Link with zlib-gabi compressed debug output
- Authentication-results: sourceware.org; auth=none
- References: <56659BFE02000078000BCA5E at prv-mh dot provo dot novell dot com> <CAMe9rOqj7bpf8sNqg6-sXLSfhFoGVR8OH9x1vHe8aV5BAi0Gcw at mail dot gmail dot com> <5665A99A02000078000BCACC at prv-mh dot provo dot novell dot com> <CAMe9rOpB+phTe3wk+NDq-j8b6gCwr+Ls-Aqqzm_XAbA+qDQQkA at mail dot gmail dot com> <5665B85D02000078000BCBC4 at prv-mh dot provo dot novell dot com>
On Mon, Dec 7, 2015 at 7:48 AM, Jan Beulich <JBeulich@suse.com> wrote:
>>>> On 07.12.15 at 15:59, <hjl.tools@gmail.com> wrote:
>> On Mon, Dec 7, 2015 at 6:45 AM, Jan Beulich <JBeulich@suse.com> wrote:
>>>>>> On 07.12.15 at 15:23, <hjl.tools@gmail.com> wrote:
>>>> On Mon, Dec 7, 2015 at 5:47 AM, Jan Beulich <JBeulich@suse.com> wrote:
>>>>> Is it really appropriate/necessary for the test to expect 1-byte
>>>>> alignment:
>>>>>
>>>>> #...
>>>>> +\[[0-9a-f]+\]: .*COMPRESSED
>>>>> +ZLIB, [0-9a-f]+, 1
>>>>> #pass
>>>>>
>>>>> (in ld-elf/gabinormal.rt)? I'm seeing .debug_aranges as the first
>>>>> debug info section, emitted with 8-byte alignment:
>>>>>
>>>>> ...
>>>>> [28] .comment.SUSE.OPTs
>>>>> PROGBITS 00000000 000781 000006 01 0 0 1
>>>>> [00000030]: MERGE, STRINGS
>>>>> [29] .debug_aranges
>>>>> PROGBITS 00000000 000ef8 000047 00 0 0 8
>>>>> [00000800]: COMPRESSED
>>>>> ZLIB, 00000080, 8
>>>>> [30] .debug_pubnames
>>>>> PROGBITS 00000000 000f3f 00007c 00 0 0 1
>>>>> [00000800]: COMPRESSED
>>>>> ZLIB, 00000094, 1
>>>>> ...
>>>>
>>>> Where does 8-byte alignment come from?
>>>
>>> I guess the compiler/assembler emits it? I didn't look at the details of
>>> how the test binaries get created. It simply seems acceptable to me
>>> for .debug_aranges to have other than 1-byte alignment.
>>
>> It could be a real bug in binutils. We need to get the bottom of
>> this.
>
> The host's crt1.o has an 8-byte aligned .debug_aranges. No
> other object file or static library involved in the linking has other
> than 1-byte alignment here.
I have seen
[11] .debug_aranges PROGBITS 0000000000000000 000100 000050
00 0 0 16
on x86-64 and
[11] .debug_aranges PROGBITS 00000000 0000f0 000038 00 0 0 8
in crt1.o on i686. Can you submit a patch to allow any alignments on
debug_aranges?
Thanks.
--
H.J.