mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-29 19:16:06 +00:00
102 lines
2.8 KiB
C++
102 lines
2.8 KiB
C++
// Global variables of scalar typees with initial values
|
|
// RUN: %clang_cc1 -std=c++20 -triple x86_64-unknown-linux-gnu -fclangir -emit-cir %s -o - | FileCheck %s
|
|
|
|
char c;
|
|
// CHECK: cir.global external @c = #cir.int<0> : !s8i
|
|
|
|
signed char sc;
|
|
// CHECK: cir.global external @sc = #cir.int<0> : !s8i
|
|
|
|
unsigned char uc;
|
|
// CHECK: cir.global external @uc = #cir.int<0> : !u8i
|
|
|
|
short ss;
|
|
// CHECK: cir.global external @ss = #cir.int<0> : !s16i
|
|
|
|
unsigned short us = 100;
|
|
// CHECK: cir.global external @us = #cir.int<100> : !u16i
|
|
|
|
int si = 42;
|
|
// CHECK: cir.global external @si = #cir.int<42> : !s32i
|
|
|
|
unsigned ui;
|
|
// CHECK: cir.global external @ui = #cir.int<0> : !u32i
|
|
|
|
long sl;
|
|
// CHECK: cir.global external @sl = #cir.int<0> : !s64i
|
|
|
|
unsigned long ul;
|
|
// CHECK: cir.global external @ul = #cir.int<0> : !u64i
|
|
|
|
long long sll;
|
|
// CHECK: cir.global external @sll = #cir.int<0> : !s64i
|
|
|
|
unsigned long long ull = 123456;
|
|
// CHECK: cir.global external @ull = #cir.int<123456> : !u64i
|
|
|
|
__int128 s128;
|
|
// CHECK: cir.global external @s128 = #cir.int<0> : !s128i
|
|
|
|
unsigned __int128 u128;
|
|
// CHECK: cir.global external @u128 = #cir.int<0> : !u128i
|
|
|
|
wchar_t wc;
|
|
// CHECK: cir.global external @wc = #cir.int<0> : !s32i
|
|
|
|
char8_t c8;
|
|
// CHECK: cir.global external @c8 = #cir.int<0> : !u8i
|
|
|
|
char16_t c16;
|
|
// CHECK: cir.global external @c16 = #cir.int<0> : !u16i
|
|
|
|
char32_t c32;
|
|
// CHECK: cir.global external @c32 = #cir.int<0> : !u32i
|
|
|
|
_BitInt(20) sb20;
|
|
// CHECK: cir.global external @sb20 = #cir.int<0> : !cir.int<s, 20>
|
|
|
|
unsigned _BitInt(48) ub48;
|
|
// CHECK: cir.global external @ub48 = #cir.int<0> : !cir.int<u, 48>
|
|
|
|
bool boolfalse = false;
|
|
// CHECK: cir.global external @boolfalse = #false
|
|
|
|
_Float16 f16;
|
|
// CHECK: cir.global external @f16 = #cir.fp<0.000000e+00> : !cir.f16
|
|
|
|
__bf16 bf16;
|
|
// CHECK: cir.global external @bf16 = #cir.fp<0.000000e+00> : !cir.bf16
|
|
|
|
float f;
|
|
// CHECK: cir.global external @f = #cir.fp<0.000000e+00> : !cir.float
|
|
|
|
double d = 1.25;
|
|
// CHECK: cir.global external @d = #cir.fp<1.250000e+00> : !cir.double
|
|
|
|
long double ld;
|
|
// CHECK: cir.global external @ld = #cir.fp<0.000000e+00> : !cir.long_double<!cir.f80>
|
|
|
|
__float128 f128;
|
|
// CHECK: cir.global external @f128 = #cir.fp<0.000000e+00> : !cir.f128
|
|
|
|
void *vp;
|
|
// CHECK: cir.global external @vp = #cir.ptr<null> : !cir.ptr<!void>
|
|
|
|
int *ip = 0;
|
|
// CHECK: cir.global external @ip = #cir.ptr<null> : !cir.ptr<!s32i>
|
|
|
|
double *dp;
|
|
// CHECK: cir.global external @dp = #cir.ptr<null> : !cir.ptr<!cir.double>
|
|
|
|
char **cpp;
|
|
// CHECK: cir.global external @cpp = #cir.ptr<null> : !cir.ptr<!cir.ptr<!s8i>>
|
|
|
|
void (*fp)();
|
|
// CHECK: cir.global external @fp = #cir.ptr<null> : !cir.ptr<!cir.func<()>>
|
|
|
|
int (*fpii)(int) = 0;
|
|
// CHECK: cir.global external @fpii = #cir.ptr<null> : !cir.ptr<!cir.func<(!s32i) -> !s32i>>
|
|
|
|
void (*fpvar)(int, ...);
|
|
// CHECK: cir.global external @fpvar = #cir.ptr<null> : !cir.ptr<!cir.func<(!s32i, ...)>>
|