The linker's PreserveSource mode is broken. Should we fix or delete it?

Duncan P. N. Exon Smith dexonsmith at apple.com
Mon Oct 27 14:36:24 PDT 2014


> On 2014-Oct-26, at 20:03, Rafael EspĂ­ndola <rafael.espindola at gmail.com> wrote:
> 
> Forcing PreserveSource causes these tests to fail:
> 
>    LLVM :: Linker/metadata-a.ll
>    LLVM :: Linker/prefixdata.ll
>    LLVM :: Linker/type-unique-odr-a.ll
>    LLVM :: Linker/type-unique-simple-a.ll
>    LLVM :: Linker/type-unique-simple2-a.ll
>    LLVM :: Linker/type-unique-simple2.ll
>    LLVM :: Linker/type-unique-type-array-a.ll
>    LLVM :: Linker/unnamed-addr1-a.ll
>    LLVM :: Linker/visibility1.ll
> 
> It is sure to become even worse as new features are added and not
> tested in that mode.
> 
> The attached patch simply deletes the feature.

+1

> If it is still needed I
> can try to figure out what is broken, add a -preserve-source option to
> llvm-link and use it in the tests to make sure it keeps working.

I don't see a need for it.

Note that it's exposed by the C API and ocaml and go bindings:

$ git grep -e PreserveSource -l
bindings/go/llvm/linker.go
bindings/ocaml/linker/llvm_linker.ml
bindings/ocaml/linker/llvm_linker.mli
include/llvm-c/Linker.h
include/llvm/Linker/Linker.h
test/Bindings/Ocaml/linker.ml
unittests/Linker/LinkModulesTest.cpp





More information about the llvm-commits mailing list