[llvm-bugs] [Bug 38078] New: lld: error: thunk creation not converged linking failure

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Jul 6 04:25:47 PDT 2018


https://bugs.llvm.org/show_bug.cgi?id=38078

            Bug ID: 38078
           Summary: lld: error: thunk creation not converged linking
                    failure
           Product: lld
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: All Bugs
          Assignee: unassignedbugs at nondot.org
          Reporter: tomasz.sniatowski+llvm at gmail.com
                CC: llvm-bugs at lists.llvm.org

While building a fork of Chromium 67 (targeting android-arm), I encountered a
cryptic "thunk creation not converged" error from lld after applying some
innocent-looking patch on top of a working build. All of a sudden, aftera 10
line C++ patch doing nothing extra-ordinary, the build would refuse to link,
with 100% reproducibility, and on different machines. I did not find any bugs
or mentions of hitting that error message anywhere.

After some digging, I found that lld versions between 

https://github.com/llvm-project/llvm-project-20170507/commit/dbac5a102bf58bf9fb55b62110e1298146555b06
ELF: Do not create multiple thunks for the same virtual address.

and 

https://github.com/llvm-project/llvm-project-20170507/commit/12f238bb4b2b9384772055b7c1d62b5ec27db2c0
ELF: Add support for short thunks on ARM.

exhibit the issue. Linking with gold was fine, using a newer or older lld (not
in that range) was also fine.

Obviously this is not an "active" issue (lld master also works), however given
my limited understanding of what actually goes wrong, I worry a bit that the
"fix" commit my bisect found was actually only an optimization that hid the
issue, but did not solve it. I would really appreciate if someone familiar with
this code could take a look.

Unfortunately I am unable to provide a repro case as it is a) very large in
terms of object files linked b) huge in terms of source diff on top of plain
chrome and worst of all c) partially proprietary, so I legally can't. However,
I can try to run tests, instrumented builds, provide logs, etc., to try and
help pinpoint what goes wrong.

-- 
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/20180706/86d2cc1e/attachment-0001.html>


More information about the llvm-bugs mailing list