diff options
author | Michael J. Spencer <bigcheesegs@gmail.com> | 2012-04-19 19:27:54 +0000 |
---|---|---|
committer | Michael J. Spencer <bigcheesegs@gmail.com> | 2012-04-19 19:27:54 +0000 |
commit | 75338097c786eea1c461e744a2c45af78f56286f (patch) | |
tree | c76fcc9ba79df82b8fabeb896f0c6340629f8fdd /test/Linker | |
parent | b423d18a00eed4968d6df7415449259b09b7d67e (diff) | |
download | external_llvm-75338097c786eea1c461e744a2c45af78f56286f.zip external_llvm-75338097c786eea1c461e744a2c45af78f56286f.tar.gz external_llvm-75338097c786eea1c461e744a2c45af78f56286f.tar.bz2 |
Remove llvm-ld and llvm-stub (which is only used by llvm-ld).
llvm-ld is no longer useful and causes confusion and so it is being removed.
* Does not work very well on Windows because it must call a gcc like driver to
assemble and link.
* Has lots of hard coded paths which are wrong on many systems.
* Does not understand most of ld's options.
* Can be partially replaced by llvm-link | opt | {llc | as, llc -filetype=obj} |
ld, or fully replaced by Clang.
I know of no production use of llvm-ld, and hacking use should be
replaced by Clang's driver.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155147 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Linker')
-rw-r--r-- | test/Linker/2008-03-07-DroppedSection_a.ll | 2 | ||||
-rw-r--r-- | test/Linker/2008-03-07-DroppedSection_b.ll | 2 | ||||
-rw-r--r-- | test/Linker/link-archive.ll | 16 | ||||
-rw-r--r-- | test/Linker/link-messages.ll | 7 |
4 files changed, 5 insertions, 22 deletions
diff --git a/test/Linker/2008-03-07-DroppedSection_a.ll b/test/Linker/2008-03-07-DroppedSection_a.ll index 4458971..ec9d5c2 100644 --- a/test/Linker/2008-03-07-DroppedSection_a.ll +++ b/test/Linker/2008-03-07-DroppedSection_a.ll @@ -1,6 +1,6 @@ ; RUN: llvm-as < %s > %t.bc ; RUN: llvm-as < %p/2008-03-07-DroppedSection_b.ll > %t2.bc -; RUN: llvm-ld -r -disable-opt %t.bc %t2.bc -o %t3.bc +; RUN: llvm-link %t.bc %t2.bc -o %t3.bc ; RUN: llvm-dis < %t3.bc | grep ".data.init_task" ; ModuleID = 't.bc' diff --git a/test/Linker/2008-03-07-DroppedSection_b.ll b/test/Linker/2008-03-07-DroppedSection_b.ll index 884bf0a..63b64f6 100644 --- a/test/Linker/2008-03-07-DroppedSection_b.ll +++ b/test/Linker/2008-03-07-DroppedSection_b.ll @@ -1,6 +1,6 @@ ; RUN: llvm-as < %s > %t.bc ; RUN: llvm-as < %p/2008-03-07-DroppedSection_a.ll > %t2.bc -; RUN: llvm-ld -r -disable-opt %t.bc %t2.bc -o %t3.bc +; RUN: llvm-link %t.bc %t2.bc -o %t3.bc ; RUN: llvm-dis < %t3.bc | grep ".data.init_task" ; ModuleID = 'u.bc' diff --git a/test/Linker/link-archive.ll b/test/Linker/link-archive.ll deleted file mode 100644 index 9251b4e..0000000 --- a/test/Linker/link-archive.ll +++ /dev/null @@ -1,16 +0,0 @@ -; Test linking of a bc file to an archive via llvm-ld. -; PR1434 -; RUN: rm -f %t.bar.a %t.foo.a -; RUN: llvm-as %s -o %t.bar.bc -; RUN: echo {define i32* @foo(i32 %x) \{ ret i32* @baz \} \ -; RUN: @baz = external global i32 } | llvm-as -o %t.foo.bc -; RUN: llvm-ar rcf %t.foo.a %t.foo.bc -; RUN: llvm-ar rcf %t.bar.a %t.bar.bc -; RUN: llvm-ld -disable-opt %t.bar.bc %t.foo.a -o %t.bc -; RUN: llvm-ld -disable-opt %t.foo.bc %t.bar.a -o %t.bc -declare i32* @foo(...) -define i32* @bar() { - %ret = call i32* (...)* @foo( i32 123 ) - ret i32* %ret -} -@baz = global i32 0 diff --git a/test/Linker/link-messages.ll b/test/Linker/link-messages.ll index 920782d..1faae18 100644 --- a/test/Linker/link-messages.ll +++ b/test/Linker/link-messages.ll @@ -2,10 +2,9 @@ ; that error is printed out. ; RUN: llvm-as %s -o %t.one.bc ; RUN: llvm-as %s -o %t.two.bc -; RUN: not llvm-ld -disable-opt -link-as-library %t.one.bc %t.two.bc \ -; RUN: -o %t.bc 2>%t.err -; RUN: grep "symbol multiply defined" %t.err +; RUN: not llvm-link %t.one.bc %t.two.bc -o %t.bc |& FileCheck %s +; CHECK: symbol multiply defined define i32 @bar() { - ret i32 0 + ret i32 0 } |