You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Ok I've confirmed #55952 is the cause of this bug. I don't really know how this is showing up though as none of the symbols which use GCC_4.3.0 are even referenced from the file:
$ readelf -s obj/build/x86_64-unknown-linux-gnu/llvm/bin/llc | grep GCC_4.3.0
343: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __floatuntitf@GCC_4.3.0 (12)
344: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __netf2@GCC_4.3.0 (12)
346: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __floatunditf@GCC_4.3.0 (12)
347: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __multf3@GCC_4.3.0 (12)
350: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __fixtfdi@GCC_4.3.0 (12)
351: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __eqtf2@GCC_4.3.0 (12)
353: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __powitf2@GCC_4.3.0 (12)
354: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __floatunsitf@GCC_4.3.0 (12)
355: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __floatditf@GCC_4.3.0 (12)
356: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __fixtfti@GCC_4.3.0 (12)
357: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __lttf2@GCC_4.3.0 (12)
358: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __extendsftf2@GCC_4.3.0 (12)
361: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __letf2@GCC_4.3.0 (12)
363: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __extenddftf2@GCC_4.3.0 (12)
365: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __fixunstfti@GCC_4.3.0 (12)
367: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __fixtfsi@GCC_4.3.0 (12)
370: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __gttf2@GCC_4.3.0 (12)
371: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __addtf3@GCC_4.3.0 (12)
374: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __divtf3@GCC_4.3.0 (12)
377: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __extendxftf2@GCC_4.3.0 (12)
378: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __trunctfdf2@GCC_4.3.0 (12)
382: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __trunctfxf2@GCC_4.3.0 (12)
383: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __fixunstfdi@GCC_4.3.0 (12)
385: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __unordtf2@GCC_4.3.0 (12)
389: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __getf2@GCC_4.3.0 (12)
390: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __fixunstfsi@GCC_4.3.0 (12)
391: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __floattitf@GCC_4.3.0 (12)
394: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __floatsitf@GCC_4.3.0 (12)
395: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __subtf3@GCC_4.3.0 (12)
396: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __trunctfsf2@GCC_4.3.0 (12)
None of those symbols are even used from llc or LLVM or... anywhere it seems. I have no idea what's putting that into some symbol table that needs to be resolved.
This may be some LLD change though because if I disable ThinLTO for LLVM itself then these symbol references seem to go away...
Ok I've bisected this to rust-lang/lld@103b4dc, which makes sense sort of because that's injecting references to all builtins, even if we're not actually using them.
Activity
alexcrichton commentedon Dec 15, 2018
Some bisection reveals that this is a regression from #56051 actually, and I suspect the most likely candidate of that rollup is #55952
cc @michaelwoerister
As to why these symbols are just now showing up, I'm not sure...
alexcrichton commentedon Dec 16, 2018
Ok I've confirmed #55952 is the cause of this bug. I don't really know how this is showing up though as none of the symbols which use
GCC_4.3.0are even referenced from the file:None of those symbols are even used from
llcor LLVM or... anywhere it seems. I have no idea what's putting that into some symbol table that needs to be resolved.This may be some LLD change though because if I disable ThinLTO for LLVM itself then these symbol references seem to go away...
alexcrichton commentedon Dec 16, 2018
Ok I've bisected this to rust-lang/lld@103b4dc, which makes sense sort of because that's injecting references to all builtins, even if we're not actually using them.
I'll follow up with LLVM later tomorrow
alexcrichton commentedon Dec 16, 2018
Or actually, I've gone ahead and opened an upstream bug report to get the ball rolling there.
This is also a beta regression as well, so I'm retagging as such.
I believe the only solution we have for now on this is to turn off ThinLTO, so I'm going to send a PR to do that.
rustc: Disable ThinLTO for LLVM's build
alexcrichton commentedon Dec 16, 2018
Er turns out this is likely already fixed at llvm-mirror/lld@3be4e82, so I can try out building that locally
rustc: Update Clang used to build LLVM on LInux
Rollup merge of rust-lang#56892 - alexcrichton:new-llvm, r=michaelwoe…
Rollup merge of rust-lang#56892 - alexcrichton:new-llvm, r=michaelwoe…
Rollup merge of rust-lang#56892 - alexcrichton:new-llvm, r=michaelwoe…
Rollup merge of rust-lang#56892 - alexcrichton:new-llvm, r=michaelwoe…
konstin commentedon Jan 8, 2019
This seems to have regressed again: https://travis-ci.org/PyO3/pyo3-pack/jobs/476983489 with this Dockerfile: https://github.com/PyO3/pyo3-pack/blob/master/Dockerfile
Relevant excerpt:
alexcrichton commentedon Jan 8, 2019
Indeed! This should be fixed in #57429
Go back to nightly