Properly constrain register classes for sub-registers.
[oota-llvm.git] / test / Linker / basiclink.ll
1 ; Test linking two functions with different prototypes and two globals 
2 ; in different modules. This is for PR411
3 ; RUN: llvm-as %s -o %t.bar.bc
4 ; RUN: echo {define i32* @foo(i32 %x) \{ ret i32* @baz \} \
5 ; 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
8 declare i32* @foo(...)
9 define i32* @bar() {
10         %ret = call i32* (...)* @foo( i32 123 )
11         ret i32* %ret
12 }
13 @baz = global i32 0