mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-09 12:44:41 +00:00
edca80b5e8
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36073 91177308-0d34-0410-b5e6-96231b3b80d8
24 lines
638 B
LLVM
24 lines
638 B
LLVM
; Linking these two translation units causes there to be two LLVM values in the
|
|
; symbol table with the same name and same type. When this occurs, the symbol
|
|
; table class is DROPPING one of the values, instead of renaming it like a nice
|
|
; little symbol table. This is causing llvm-link to die, at no fault of its
|
|
; own.
|
|
|
|
; RUN: llvm-upgrade %s | llvm-as > %t.out2.bc
|
|
; RUN: echo "%T1 = type opaque @GVar = external global %T1*" | llvm-as > %t.out1.bc
|
|
; RUN: llvm-link %t.out1.bc %t.out2.bc
|
|
|
|
%T1 = type opaque
|
|
%T2 = type int
|
|
|
|
%GVar = global %T2 * null
|
|
|
|
implementation
|
|
|
|
void %foo(%T2 * %X) {
|
|
%X = cast %T2* %X to %T1 *
|
|
ret void
|
|
}
|
|
|
|
|