35 lines · plain
1// RUN: %clang_cc1 -triple dxil-pc-shadermodel6.3-library -ast-dump -o - %s | FileCheck %s2 3// CHECK: VarDecl {{.*}} global_scalar 'hlsl_private int' static cinit4static int global_scalar = 0;5 6// CHECK: VarDecl {{.*}} global_buffer 'RWBuffer<float>':'hlsl::RWBuffer<float>' callinit7RWBuffer<float> global_buffer;8 9class A {10// CHECK: VarDecl {{.*}} a 'hlsl_private int' static11 static int a;12};13 14class B {15// CHECK: VarDecl {{.*}} b 'hlsl_private int' static16 static int b;17};18 19// CHECK: VarDecl {{.*}} b 'hlsl_private int' cinit20int B::b = 0;21 22export void foo() {23// CHECK: VarDecl {{.*}} local_buffer 'RWBuffer<float>':'hlsl::RWBuffer<float>' cinit24 RWBuffer<float> local_buffer = global_buffer;25 26// CHECK: VarDecl {{.*}} static_local_buffer 'RWBuffer<float>':'hlsl::RWBuffer<float>' static cinit27 static RWBuffer<float> static_local_buffer = global_buffer;28 29// CHECK: VarDecl {{.*}} local_scalar 'int' cinit30 int local_scalar = global_scalar;31 32// CHECK: VarDecl {{.*}} static_scalar 'hlsl_private int' static cinit33 static int static_scalar = 0;34}35