CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
66 lines
2.5 KiB
HLSL
66 lines
2.5 KiB
HLSL
// RUN: %clang_cc1 -triple dxil-pc-shadermodel6.6-library %s -ast-dump | FileCheck %s
|
|
|
|
// CHECK: FunctionDecl {{.*}} fn 'void (float)'
|
|
// CHECK-NEXT: ParmVarDecl {{.*}} f 'float'
|
|
// CHECK-NOT: HLSLParamModifierAttr
|
|
void fn(float f);
|
|
|
|
// CHECK: FunctionDecl {{.*}}6 fn2 'void (float)'
|
|
// CHECK-NEXT: ParmVarDecl {{.*}} f 'float'
|
|
// CHECK-NEXT: HLSLParamModifierAttr {{.*}} in
|
|
// CHECK-NOT: HLSLParamModifierAttr
|
|
void fn2(in float f);
|
|
|
|
// CHECK: FunctionDecl {{.*}} fn3 'void (out float)'
|
|
// CHECK-NEXT: ParmVarDecl {{.*}} f 'float &__restrict'
|
|
// CHECK-NEXT: HLSLParamModifierAttr {{.*}} out
|
|
// CHECK-NOT: HLSLParamModifierAttr
|
|
void fn3(out float f);
|
|
|
|
// CHECK: FunctionDecl {{.*}} fn4 'void (inout float)'
|
|
// CHECK-NEXT: ParmVarDecl {{.*}} f 'float &__restrict'
|
|
// CHECK-NEXT: HLSLParamModifierAttr {{.*}} inout
|
|
// CHECK-NOT: HLSLParamModifierAttr
|
|
void fn4(inout float f);
|
|
|
|
// CHECK: FunctionDecl {{.*}} fn5 'void (inout float)'
|
|
// CHECK-NEXT: ParmVarDecl {{.*}} f 'float &__restrict'
|
|
// CHECK-NEXT: HLSLParamModifierAttr {{.*}} inout MergedSpelling
|
|
// CHECK-NOT: HLSLParamModifierAttr
|
|
void fn5(out in float f);
|
|
|
|
// CHECK: FunctionDecl {{.*}} fn6 'void (inout float)'
|
|
// CHECK-NEXT: ParmVarDecl {{.*}} f 'float &__restrict'
|
|
// CHECK-NEXT: HLSLParamModifierAttr {{.*}} inout MergedSpelling
|
|
// CHECK-NOT: HLSLParamModifierAttr
|
|
void fn6(in out float f);
|
|
|
|
// CHECK-NEXT: FunctionTemplateDecl [[Template:0x[0-9a-fA-F]+]] {{.*}} fn7
|
|
// CHECK-NEXT: TemplateTypeParmDecl {{.*}} referenced typename depth 0 index 0 T
|
|
// CHECK-NEXT: FunctionDecl {{.*}} fn7 'void (inout T)'
|
|
// CHECK-NEXT: ParmVarDecl {{.*}} f 'T'
|
|
// CHECK-NEXT: HLSLParamModifierAttr {{.*}} inout
|
|
// CHECK-NEXT: FunctionDecl [[Instantiation:0x[0-9a-fA-F]+]] {{.*}} used fn7 'void (inout float)' implicit_instantiation
|
|
// CHECK-NEXT: TemplateArgument type 'float'
|
|
// CHECK-NEXT: BuiltinType {{.*}} 'float'
|
|
// CHECK-NEXT: ParmVarDecl {{.*}} f 'float &__restrict'
|
|
// CHECK-NEXT: HLSLParamModifierAttr {{.*}} inout
|
|
|
|
template <typename T>
|
|
void fn7(inout T f);
|
|
|
|
// CHECK: FunctionDecl {{.*}} fn8 'void ()'
|
|
// CHECK-NEXT: CompoundStmt
|
|
// CHECK-NEXT: DeclStmt
|
|
// CHECK-NEXT: VarDecl {{.*}} used f 'float'
|
|
// CHECK-NEXT: CallExpr {{.*}} 'void'
|
|
// CHECK-NEXT: ImplicitCastExpr {{.*}} 'void (*)(inout float)' <FunctionToPointerDecay>
|
|
// CHECK-NEXT: DeclRefExpr {{.*}} 'void (inout float)' lvalue
|
|
// CHECK-SAME: Function [[Instantiation]] 'fn7' 'void (inout float)'
|
|
// CHECK-SAME: (FunctionTemplate [[Template]] 'fn7')
|
|
// CHECK-NEXT: HLSLOutArgExpr {{.*}}'float' lvalue
|
|
void fn8() {
|
|
float f;
|
|
fn7<float>(f);
|
|
}
|