// RUN: %dxc -E main -T ps_6_0 %s | %D3DReflect %s | FileCheck %s float A[6] : register(b0); float main(int i : A) : SV_TARGET { return A[i] + A[i+1] + A[i+2] ; } // CHECK: ID3D12ShaderReflection: // CHECK: D3D12_SHADER_BUFFER_DESC: // CHECK: Shader Version: Pixel 6.0 // CHECK: ConstantBuffers: 1 // CHECK: BoundResources: 1 // CHECK: InputParameters: 1 // CHECK: OutputParameters: 1 // CHECK: Constant Buffers: // CHECK: ID3D12ShaderReflectionConstantBuffer: // CHECK: D3D12_SHADER_BUFFER_DESC: Name: $Globals // CHECK: Type: D3D_CT_CBUFFER // CHECK: Size: 96 // CHECK: Num Variables: 1 // CHECK: { // CHECK: ID3D12ShaderReflectionVariable: // CHECK: D3D12_SHADER_VARIABLE_DESC: Name: A // CHECK: Size: 84 // CHECK: uFlags: 0x2 // CHECK: ID3D12ShaderReflectionType: // CHECK: D3D12_SHADER_TYPE_DESC: Name: float // CHECK: Class: D3D_SVC_SCALAR // CHECK: Type: D3D_SVT_FLOAT // CHECK: Elements: 6 // CHECK: Rows: 1 // CHECK: Columns: 1 // CHECK: CBuffer: $Globals // CHECK: } // CHECK: Bound Resources: // CHECK: D3D12_SHADER_BUFFER_DESC: Name: $Globals // CHECK: Type: D3D_SIT_CBUFFER // CHECK: uID: 0 // CHECK: BindPoint: 0 // CHECK: Dimension: D3D_SRV_DIMENSION_UNKNOWN