[PATCH] D29892: ar: add llvm-dlltool support
Rafael Avila de Espindola via llvm-commits
llvm-commits at lists.llvm.org
Mon May 15 09:12:34 PDT 2017
Martell Malone <martellmalone at gmail.com> writes:
>> > Index: lib/Object/ArchiveWriter.cpp
>> > ===================================================================
>> > --- lib/Object/ArchiveWriter.cpp
>> > +++ lib/Object/ArchiveWriter.cpp
>> > @@ -314,7 +314,8 @@
>> > continue;
>> > if (!(Symflags & object::SymbolRef::SF_Global))
>> > continue;
>> > - if (Symflags & object::SymbolRef::SF_Undefined)
>> > + if (Symflags & object::SymbolRef::SF_Undefined &&
>> > + !(Symflags & object::SymbolRef::SF_Weak))
>> > continue;
>> This does look wrong for ELF. In any case, I will just check in a
>> testcase for ELF that will show the issue.
>
> Great, Thanks Rafael.
> This should help a lot to ensure we don't break any existing functionality.
>
> Suggestions are welcome on how best to make this happen for COFF only.
> Passing magic boolean flags might not be the correct way.
I added the test in r303075.
I don't know much about the COFF case. Why does the linker need to see
undefined symbols in the archive table? Are the symbols actually
undefined?
Cheers,
Rafael
More information about the llvm-commits
mailing list