; This bug was caused by two CPR's existing for the same global variable, 
; colliding in the Module level CPR map.
; RUN: llvm-as %s -o /dev/null
; RUN: verify-uselistorder %s

define void @test() {
        call void (...) bitcast (void (i16*, i32)* @AddString to void (...)*)( i16* null, i32 0 )
        ret void
}

define void @AddString(i16* %tmp.124, i32 %tmp.127) {
        call void (...) bitcast (void (i16*, i32)* @AddString to void (...)*)( i16* %tmp.124, i32 %tmp.127 )
        ret void
}