|  | // RUN: %clang_cc1 -finclude-default-header -triple spirv-unknown-vulkan-compute -emit-llvm -disable-llvm-passes -o - %s | FileCheck %s | 
|  |  | 
|  | // CHECK: define internal spir_func void @__cxx_global_var_init() | 
|  | // CHECK: [[entry_token:%.*]] = call token @llvm.experimental.convergence.entry() | 
|  | // CHECK: br label %[[loop_entry:.*]] | 
|  |  | 
|  | // CHECK: [[loop_entry]]: | 
|  | // CHECK: [[loop_token:%.*]] = call token @llvm.experimental.convergence.loop() [ "convergencectrl"(token [[entry_token]]) ] | 
|  | // CHECK: call spir_func void {{.*}} [ "convergencectrl"(token [[loop_token]]) ] | 
|  | // CHECK: br i1 {{%.*}} label {{%.*}} label %[[loop_entry]] | 
|  |  | 
|  | struct S { | 
|  | int i; | 
|  | S() { i = 10; } | 
|  | }; | 
|  |  | 
|  | static S s[2]; | 
|  |  | 
|  | [numthreads(4,1,1)] | 
|  | void main() { | 
|  | } | 
|  |  |