11// Global variables of intergal types
2- // RUN: %clang_cc1 -std=c++20 -triple x86_64-unknown-linux-gnu -fclangir -emit-llvm %s -o - | FileCheck %s
2+ // RUN: %clang_cc1 -std=c++20 -triple x86_64-unknown-linux-gnu -fclangir -emit-llvm %s -o - | FileCheck %s
33
4- // Note: Currently unsupported features include default zero-initialization
5- // and alignment. The fact that "external" is only printed for globals
6- // without an initializer is a quirk of the LLVM AsmWriter.
4+ // Note: Currently unsupported features include alignment..
75
86char c;
9- // CHECK: @c = external dso_local global i8
7+ // CHECK: @c = dso_local global i8 0
108
119signed char sc;
12- // CHECK: @sc = external dso_local global i8
10+ // CHECK: @sc = dso_local global i8 0
1311
1412unsigned char uc;
15- // CHECK: @uc = external dso_local global i8
13+ // CHECK: @uc = dso_local global i8 0
1614
1715short ss;
18- // CHECK: @ss = external dso_local global i16
16+ // CHECK: @ss = dso_local global i16 0
1917
2018unsigned short us = 100 ;
2119// CHECK: @us = dso_local global i16 100
@@ -24,82 +22,82 @@ int si = 42;
2422// CHECK: @si = dso_local global i32 42
2523
2624unsigned ui;
27- // CHECK: @ui = external dso_local global i32
25+ // CHECK: @ui = dso_local global i32 0
2826
2927long sl;
30- // CHECK: @sl = external dso_local global i64
28+ // CHECK: @sl = dso_local global i64 0
3129
3230unsigned long ul;
33- // CHECK: @ul = external dso_local global i64
31+ // CHECK: @ul = dso_local global i64 0
3432
3533long long sll;
36- // CHECK: @sll = external dso_local global i64
34+ // CHECK: @sll = dso_local global i64 0
3735
3836unsigned long long ull = 123456 ;
3937// CHECK: @ull = dso_local global i64 123456
4038
4139__int128 s128;
42- // CHECK: @s128 = external dso_local global i128
40+ // CHECK: @s128 = dso_local global i128 0
4341
4442unsigned __int128 u128 ;
45- // CHECK: @u128 = external dso_local global i128
43+ // CHECK: @u128 = dso_local global i128 0
4644
4745wchar_t wc;
48- // CHECK: @wc = external dso_local global i32
46+ // CHECK: @wc = dso_local global i32 0
4947
5048char8_t c8;
51- // CHECK: @c8 = external dso_local global i8
49+ // CHECK: @c8 = dso_local global i8 0
5250
5351char16_t c16;
54- // CHECK: @c16 = external dso_local global i16
52+ // CHECK: @c16 = dso_local global i16 0
5553
5654char32_t c32;
57- // CHECK: @c32 = external dso_local global i32
55+ // CHECK: @c32 = dso_local global i32 0
5856
5957_BitInt (20 ) sb20;
60- // CHECK: @sb20 = external dso_local global i20
58+ // CHECK: @sb20 = dso_local global i20 0
6159
6260unsigned _BitInt (48 ) ub48;
63- // CHECK: @ub48 = external dso_local global i48
61+ // CHECK: @ub48 = dso_local global i48 0
6462
6563bool boolfalse = false ;
6664// CHECK: @boolfalse = dso_local global i8 0
6765
6866_Float16 f16 ;
69- // CHECK: @f16 = external dso_local global half
67+ // CHECK: @f16 = dso_local global half
7068
7169__bf16 bf16 ;
72- // CHECK: @bf16 = external dso_local global bfloat
70+ // CHECK: @bf16 = dso_local global bfloat
7371
7472float f;
75- // CHECK: @f = external dso_local global float
73+ // CHECK: @f = dso_local global float 0.000000e+00
7674
7775double d = 1.25 ;
7876// CHECK: @d = dso_local global double 1.250000e+00
7977
8078long double ld;
81- // CHECK: @ld = external dso_local global x86_fp80
79+ // CHECK: @ld = dso_local global x86_fp80 0xK00
8280
8381__float128 f128 ;
84- // CHECK: @f128 = external dso_local global fp128
82+ // CHECK: @f128 = dso_local global fp128 0xL00
8583
8684void *vp;
87- // CHECK: @vp = external dso_local global ptr{{$}}
85+ // CHECK: @vp = dso_local global ptr null
8886
8987int *ip = 0 ;
9088// CHECK: @ip = dso_local global ptr null
9189
9290double *dp;
93- // CHECK: @dp = external dso_local global ptr{{$}}
91+ // CHECK: @dp = dso_local global ptr null
9492
9593char **cpp;
96- // CHECK: @cpp = external dso_local global ptr{{$}}
94+ // CHECK: @cpp = dso_local global ptr null
9795
9896void (*fp)();
99- // CHECK: @fp = external dso_local global ptr{{$}}
97+ // CHECK: @fp = dso_local global ptr null
10098
10199int (*fpii)(int ) = 0 ;
102100// CHECK: @fpii = dso_local global ptr null
103101
104102void (*fpvar)(int , ...);
105- // CHECK: @fpvar = external dso_local global ptr{{$}}
103+ // CHECK: @fpvar = dso_local global ptr null
0 commit comments