Files
c3c/test/test_suite/variables/var_init_multi.c3t
2025-07-06 00:22:21 +02:00

31 lines
788 B
Plaintext

// #target: macos-x64
module test;
fn int main()
{
static int sx, sy;
tlocal int tx, ty;
int x, y;
int* z, w @noinit @align(16);
return x;
}
/* #expect: test.ll
@main.sx = internal unnamed_addr global i32 0, align 4
@main.sy = internal unnamed_addr global i32 0, align 4
@main.tx = internal thread_local(localdynamic) unnamed_addr global i32 0, align 4
@main.ty = internal thread_local(localdynamic) unnamed_addr global i32 0, align 4
entry:
%x = alloca i32, align 4
%y = alloca i32, align 4
%z = alloca ptr, align 16
%w = alloca ptr, align 16
%0 = call ptr @llvm.threadlocal.address.p0(ptr @main.tx)
%1 = call ptr @llvm.threadlocal.address.p0(ptr @main.ty)
store i32 0, ptr %x, align 4
store i32 0, ptr %y, align 4
%2 = load i32, ptr %x, align 4
ret i32 %2
}