diff --git a/test/Linker/2008-07-06-AliasWeakDest.ll b/test/Linker/2008-07-06-AliasWeakDest.ll new file mode 100644 index 00000000000..667acba0e9a --- /dev/null +++ b/test/Linker/2008-07-06-AliasWeakDest.ll @@ -0,0 +1,15 @@ +; PR2463 +; RUN: llvm-as %s -o %t1.bc -f +; RUN: llvm-as %p/2008-07-06-AliasWeakDest2.ll -o %t2.bc -f +; RUN: llvm-link %t1.bc %t2.bc -f -o %t3.bc +; RUN: llvm-link %t2.bc %t1.bc -f -o %t4.bc + +target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32" +target triple = "i386-pc-linux-gnu" + +@sched_clock = alias i64 ()* @native_sched_clock + +define i64 @native_sched_clock() nounwind { +entry: + ret i64 0 +} diff --git a/test/Linker/2008-07-06-AliasWeakDest2.ll b/test/Linker/2008-07-06-AliasWeakDest2.ll new file mode 100644 index 00000000000..0fece81d716 --- /dev/null +++ b/test/Linker/2008-07-06-AliasWeakDest2.ll @@ -0,0 +1,17 @@ +; This file is used by 2008-07-06-AliasWeakDest2.ll +; RUN: true + +target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32" +target triple = "i386-pc-linux-gnu" + + +define i64 @sched_clock_cpu(i32 inreg %cpu) nounwind { +entry: + %tmp = call i64 @sched_clock( ) nounwind ; + ret i64 %tmp +} + +define weak i64 @sched_clock() { +entry: + ret i64 1 +}