blob: afe0320ba92f0fe648b039c6b1536383a8be531b [file] [log] [blame]
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001; Test linking two functions with different prototypes and two globals
2; in different modules. This is for PR411
Dan Gohman2d65d352009-08-25 15:38:29 +00003; RUN: llvm-as %s -o %t.bar.bc
Dan Gohmanf17a25c2007-07-18 16:29:46 +00004; RUN: echo {define i32* @foo(i32 %x) \{ ret i32* @baz \} \
Dan Gohman2d65d352009-08-25 15:38:29 +00005; RUN: @baz = external global i32 } | llvm-as -o %t.foo.bc
6; RUN: llvm-link %t.bar.bc %t.foo.bc -o %t.bc
7; RUN: llvm-link %t.foo.bc %t.bar.bc -o %t.bc
Dan Gohmanf17a25c2007-07-18 16:29:46 +00008declare i32* @foo(...)
9define i32* @bar() {
10 %ret = call i32* (...)* @foo( i32 123 )
11 ret i32* %ret
12}
13@baz = global i32 0