lld seems to ignore -fno-unwind-tables |
|
Issue descriptionTested with target_os="android". To repro, build libmonochrome.so with GN args: target_os = "android" is_official_build = true is_chrome_branded = true use_lld = false Then again with use_lld = true. Running readelf -S on the two resulting binaries: $ readelf -S libmonochrome.so.gold | grep ARM [13] .ARM.exidx ARM_EXIDX 0267856c 240856c 001f98 08 AL 11 0 4 [15] .ARM.extab PROGBITS 02c55d38 29e5d38 0038ac 00 A 0 0 4 $ readelf -S libmonochrome.so.lld | grep ARM [ 1] .ARM.exidx ARM_EXIDX 00000154 000154 273960 00 AL 15 0 4 [ 3] .ARM.extab PROGBITS 00837c0c 837c0c 00384c 00 A 0 0 4 [ 4] .ARM.extabmalloc_ PROGBITS 0083b458 83b458 00000c 00 A 0 0 4 [ 5] .ARM.exidxmalloc_ ARM_EXIDX 0083b464 83b464 000020 00 AL 16 0 4 .ARM.exidx is 2.5MB larger for lld. Note: We can't just strip the section, because there are a couple libraries (icu and libc++ I think) that require being compiled with support for exceptions.
,
Dec 7 2017
Patches to fix pr34501 have been sent to the mailing list: https://reviews.llvm.org/D38361 https://reviews.llvm.org/D40964 https://reviews.llvm.org/D40966 https://reviews.llvm.org/D40967 I tried linking official+branded libmonochrome.so with these patches and the size of .ARM.exidx decreased from 2583888 bytes to 7512 bytes. So it looks like this will be fixed once those patches land.
,
Dec 8 2017
\o/ Great news! |
|
►
Sign in to add a comment |
|
Comment 1 by p...@chromium.org
, Nov 27 2017