1 // RUN: %clang_cc1 -triple=x86_64-linux-gnu -emit-llvm %s -o - | FileCheck %s 2 3 // CHECK: @tentative_attr_first ={{.*}} global i32 undef 4 int tentative_attr_first __attribute__((loader_uninitialized)); 5 int tentative_attr_first; 6 7 // CHECK: @tentative_attr_second ={{.*}} global i32 undef 8 int tentative_attr_second; 9 int tentative_attr_second __attribute__((loader_uninitialized)); 10 11 // CHECK: @array ={{.*}} global [16 x float] undef 12 float array[16] __attribute__((loader_uninitialized)); 13 14 typedef struct 15 { 16 int x; 17 float y; 18 } s; 19 20 // CHECK: @i ={{.*}} global %struct.s undef 21 // CHECK: @j1 ={{.*}}addrspace(1) global %struct.s undef 22 // CHECK: @j2 ={{.*}}addrspace(2) global %struct.s undef 23 // CHECK: @j3 ={{.*}}addrspace(3) global %struct.s undef 24 // CHECK: @j4 ={{.*}}addrspace(4) global %struct.s undef 25 // CHECK: @j5 ={{.*}}addrspace(5) global %struct.s undef 26 // CHECK: @j99 ={{.*}}addrspace(99) global %struct.s undef 27 s i __attribute__((loader_uninitialized)); 28 s j1 __attribute__((loader_uninitialized, address_space(1))); 29 s j2 __attribute__((loader_uninitialized, address_space(2))); 30 s j3 __attribute__((loader_uninitialized, address_space(3))); 31 s j4 __attribute__((loader_uninitialized, address_space(4))); 32 s j5 __attribute__((loader_uninitialized, address_space(5))); 33 s j99 __attribute__((loader_uninitialized, address_space(99))); 34 35 // CHECK: @private_extern_ok = hidden global i32 undef 36 __private_extern__ int private_extern_ok __attribute__((loader_uninitialized)); 37