Rafael Espindola | 2396be0 | 2013-09-04 14:35:48 +0000 | [diff] [blame] | 1 | ; RUN: llvm-link %s %p/unnamed-addr1-b.ll -S -o - | FileCheck %s |
Rafael Espindola | c2a94da | 2011-01-13 05:12:34 +0000 | [diff] [blame] | 2 | |
Rafael Espindola | ba7c38c | 2011-01-15 08:15:00 +0000 | [diff] [blame] | 3 | ; Only in this file |
Rafael Espindola | 254f750 | 2013-09-04 14:40:49 +0000 | [diff] [blame] | 4 | @global-a = common global i32 0 |
| 5 | ; CHECK-DAG: @global-a = common global i32 0 |
| 6 | @global-b = common unnamed_addr global i32 0 |
| 7 | ; CHECK-DAG: @global-b = common unnamed_addr global i32 0 |
Rafael Espindola | c2a94da | 2011-01-13 05:12:34 +0000 | [diff] [blame] | 8 | |
Rafael Espindola | 6947f10 | 2013-09-04 14:59:03 +0000 | [diff] [blame] | 9 | define weak void @func-a() { ret void } |
| 10 | ; CHECK-DAG: define weak void @func-a() { |
| 11 | define weak void @func-b() unnamed_addr { ret void } |
| 12 | ; CHECK-DAG: define weak void @func-b() unnamed_addr { |
| 13 | |
Rafael Espindola | ba7c38c | 2011-01-15 08:15:00 +0000 | [diff] [blame] | 14 | ; Other file has unnamed_addr definition |
Rafael Espindola | 254f750 | 2013-09-04 14:40:49 +0000 | [diff] [blame] | 15 | @global-c = common unnamed_addr global i32 0 |
| 16 | ; CHECK-DAG: @global-c = common unnamed_addr global i32 0 |
| 17 | @global-d = external global i32 |
Rafael Espindola | 0178d23 | 2015-12-07 16:31:41 +0000 | [diff] [blame] | 18 | |
| 19 | define i32* @use-global-d() { |
| 20 | ret i32* @global-d |
| 21 | } |
| 22 | |
Rafael Espindola | 254f750 | 2013-09-04 14:40:49 +0000 | [diff] [blame] | 23 | ; CHECK-DAG: @global-d = global i32 42 |
| 24 | @global-e = external unnamed_addr global i32 |
| 25 | ; CHECK-DAG: @global-e = unnamed_addr global i32 42 |
| 26 | @global-f = weak global i32 42 |
| 27 | ; CHECK-DAG: @global-f = global i32 42 |
Rafael Espindola | c2a94da | 2011-01-13 05:12:34 +0000 | [diff] [blame] | 28 | |
Rafael Espindola | 6fd1b8e | 2014-06-06 01:20:28 +0000 | [diff] [blame] | 29 | @alias-a = weak global i32 42 |
David Blaikie | 21f77df | 2015-09-11 03:22:04 +0000 | [diff] [blame] | 30 | ; CHECK-DAG: @alias-a = alias i32, i32* @global-f |
Rafael Espindola | 6fd1b8e | 2014-06-06 01:20:28 +0000 | [diff] [blame] | 31 | @alias-b = weak unnamed_addr global i32 42 |
David Blaikie | 21f77df | 2015-09-11 03:22:04 +0000 | [diff] [blame] | 32 | ; CHECK-DAG: @alias-b = unnamed_addr alias i32, i32* @global-f |
Rafael Espindola | 6fd1b8e | 2014-06-06 01:20:28 +0000 | [diff] [blame] | 33 | |
Rafael Espindola | 6947f10 | 2013-09-04 14:59:03 +0000 | [diff] [blame] | 34 | declare void @func-c() |
Rafael Espindola | 0178d23 | 2015-12-07 16:31:41 +0000 | [diff] [blame] | 35 | define void @use-func-c() { |
| 36 | call void @func-c() |
| 37 | ret void |
| 38 | } |
| 39 | |
Rafael Espindola | 6947f10 | 2013-09-04 14:59:03 +0000 | [diff] [blame] | 40 | ; CHECK-DAG: define weak void @func-c() { |
| 41 | define weak void @func-d() { ret void } |
| 42 | ; CHECK-DAG: define weak void @func-d() { |
| 43 | define weak void @func-e() unnamed_addr { ret void } |
| 44 | ; CHECK-DAG: define weak void @func-e() unnamed_addr { |
| 45 | |
Rafael Espindola | ba7c38c | 2011-01-15 08:15:00 +0000 | [diff] [blame] | 46 | ; Other file has non-unnamed_addr definition |
Rafael Espindola | 254f750 | 2013-09-04 14:40:49 +0000 | [diff] [blame] | 47 | @global-g = common unnamed_addr global i32 0 |
| 48 | ; CHECK-DAG: @global-g = common global i32 0 |
| 49 | @global-h = external global i32 |
| 50 | ; CHECK-DAG: @global-h = global i32 42 |
| 51 | @global-i = external unnamed_addr global i32 |
| 52 | ; CHECK-DAG: @global-i = global i32 42 |
| 53 | @global-j = weak global i32 42 |
| 54 | ; CHECK-DAG: @global-j = global i32 42 |
Rafael Espindola | 6947f10 | 2013-09-04 14:59:03 +0000 | [diff] [blame] | 55 | |
Rafael Espindola | 6fd1b8e | 2014-06-06 01:20:28 +0000 | [diff] [blame] | 56 | @alias-c = weak global i32 42 |
David Blaikie | 21f77df | 2015-09-11 03:22:04 +0000 | [diff] [blame] | 57 | ; CHECK-DAG: @alias-c = alias i32, i32* @global-f |
Rafael Espindola | 6fd1b8e | 2014-06-06 01:20:28 +0000 | [diff] [blame] | 58 | @alias-d = weak unnamed_addr global i32 42 |
David Blaikie | 21f77df | 2015-09-11 03:22:04 +0000 | [diff] [blame] | 59 | ; CHECK-DAG: @alias-d = alias i32, i32* @global-f |
Rafael Espindola | 6fd1b8e | 2014-06-06 01:20:28 +0000 | [diff] [blame] | 60 | |
| 61 | |
Rafael Espindola | 6947f10 | 2013-09-04 14:59:03 +0000 | [diff] [blame] | 62 | declare void @func-g() |
| 63 | ; CHECK-DAG: define weak void @func-g() { |
| 64 | define weak void @func-h() { ret void } |
| 65 | ; CHECK-DAG: define weak void @func-h() { |
| 66 | define weak void @func-i() unnamed_addr { ret void } |
| 67 | ; CHECK-DAG: define weak void @func-i() { |