[llvm-bugs] [Bug 34501] New: [ARM] - LLD does not deduplicate entries in .ARM.exidx
via llvm-bugs
llvm-bugs at lists.llvm.org
Wed Sep 6 05:20:44 PDT 2017
https://bugs.llvm.org/show_bug.cgi?id=34501
Bug ID: 34501
Summary: [ARM] - LLD does not deduplicate entries in .ARM.exidx
Product: lld
Version: unspecified
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: ELF
Assignee: unassignedbugs at nondot.org
Reporter: grimar at accesssoftek.com
CC: llvm-bugs at lists.llvm.org
It was spotted in comments for PR34407 that
when linking sample with LLD and gnu ld (sample can be taken from following
reply: https://bugs.llvm.org/show_bug.cgi?id=34407#c2) the size of
.ARM.exidx produced is different.
gnu ld output is:
Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf
Al
[ 3] .ARM.exidx ARM_EXIDX 0001f098 00f098 000008 00 AL 2 0
4
Unwind table index '.ARM.exidx' at offset 0xf098 contains 1 entries:
0x1f008 <main>: 0x1 [cantunwind]
and LLD's is:
Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf
Al
[ 3] .ARM.exidx ARM_EXIDX 0001f098 001098 000018 00 AL 2 0
4
Unwind table index '.ARM.exidx' at offset 0x1098 contains 3 entries:
0x1f008 <main>: 0x1 [cantunwind]
0x1f03e <putc>: 0x1 [cantunwind]
0x1f05a <putc+0x1c>: 0x1 [cantunwind]
So LLD produces 3x size of .ARM.exidx at this moment.
I know almost nothing about ARM, but after quick investigation found that gnu
ld do some proccessing for SHT_ARM_EXIDX sections.
One of stepd is deduplicating of entries. Patch implementing this was:
https://sourceware.org/ml/binutils/2009-05/msg00048.html
And also looks they had to add --no-merge-exidx-entries flag to be able
to disable deduplication
(https://sourceware.org/ml/binutils/2010-04/msg00193.html).
Not sure do we want to support this or not, reporting the difference just in
case.
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20170906/51ea2a6c/attachment.html>
More information about the llvm-bugs
mailing list