blob: 84fac34f3c451aa12d8f02490b7935f1c701e143 [file] [log] [blame]
Rafael Espindolaf5fe2922010-12-07 15:23:23 +00001// RUN: %clang_cc1 -triple x86_64-pc-linux-gnu -emit-llvm -o - %s | FileCheck %s
Daniel Dunbar3c827a72008-08-05 23:31:02 +00002
Mike Stumpc36541e2009-07-21 20:52:43 +00003int x() { return 1; }
Daniel Dunbar3c827a72008-08-05 23:31:02 +00004
Chris Lattner35b21b82010-06-27 01:06:27 +00005// CHECK: ret i32 1
Edward O'Callaghan07e72fd2009-10-26 20:49:20 +00006
7
Daniel Dunbar3c827a72008-08-05 23:31:02 +00008int f() __attribute__((weak, alias("x")));
9
10/* Test that we link to the alias correctly instead of making a new
11 forward definition. */
12int f();
13int h() {
14 return f();
15}
Edward O'Callaghan07e72fd2009-10-26 20:49:20 +000016
Pirama Arumuga Nainar33337ca2015-05-06 11:48:57 -070017// CHECK: [[call:%.*]] = call i32 (...) @f()
Chris Lattner35b21b82010-06-27 01:06:27 +000018// CHECK: ret i32 [[call]]
Edward O'Callaghan07e72fd2009-10-26 20:49:20 +000019