llvm-project/clang/test/CodeGenCXX/deferred-global-init.cpp
Eli Friedman 5866fe306d Fix for PR5967: Make const-marking for LLVM globals correct for cases requiring
run-time initialization, and emit run-time initializers aggresively to avoid
ordering issues with deferred globals.

llvm-svn: 92976
2010-01-08 00:50:11 +00:00

17 lines
401 B
C++

// RUN: %clang_cc1 %s -emit-llvm -o - | FileCheck %s
// PR5967
extern void* foo;
static void* const a = foo;
void* bar() { return a; }
// CHECK: @a = internal global i8* null
// CHECK: define internal void @__cxx_global_var_init
// CHECK: load i8** @foo
// CHECK: ret void
// CHECK: define internal void @__cxx_global_initialization
// CHECK: call void @__cxx_global_var_init()
// CHECK: ret void