[llvm-commits] [llvm] r166239 - in /llvm/trunk/test/BugPoint: crash-narrowfunctiontest.ll metadata.ll remove_arguments_test.ll

Bob Wilson bob.wilson at apple.com
Thu Oct 25 08:59:14 PDT 2012


On Oct 25, 2012, at 7:38 AM, Rafael EspĂ­ndola <rafael.espindola at gmail.com> wrote:

>> It depends. What is the root cause? If this is a big bug in libLTO
>> that just happens to be hidden for ELF? If so, this is the right
>> temporary workaround. If, on the other hand, it is a problem with the
>> linker (like not calling lto_codegen_add_must_preserve_symbol when it
>> should), then I think this should be made Mach-O only, or even better,
>> old linker only.
> 
> So, which one is it? Is this a bug on LLVM or a bug in the apple
> linker? I really don't think we should disable tests on ELF because of
> a bug in the apple linker if that is the case.

Are you really building bugpoint with LTO?  It makes no difference if you're not.

Anyway, it is not clear whether the bug is in LTO or Apple's linker.  I believe the issue currently exists for ELF as well, because our makefiles are not linking bugpoint with the -export-dynamic option.  Apparently we had intended to disable the internalize pass by default, but that was not done correctly and LTO is still using it.  You could consider that a bug.  I've actually been trying to push to leave internalize enabled by default, since it can make a significant difference in performance.  If we disable it by default, I suspect that many users will not know that it exists and will not turn it on.  If it is enabled by default, you can always turn it off if it causes problems.  That, of course, requires a linker option like -export-dynamic to do that.  Apple's linker currently does not have such an option.  I suppose you could consider that a bug.  Either way, we're working on getting it resolved, and we'll revert the test workaround when we have a proper solution.



More information about the llvm-commits mailing list