| # RUN: yaml2obj %s | obj2yaml | FileCheck %s |
| |
| ## This test checks that we correctly compute the StaticSamplersOffset for each |
| ## of the root parameter types (version 1.0 variants) |
| |
| ## StaticSamplerOffset |
| ## = 24 (root signature header) |
| ## + 12 (header) + 12 (root constants) |
| ## + 12 (header) + 8 (v1.1 root descriptor) |
| ## + 12 (header) + 8 (root descriptor table) |
| ## + 20 (v1.1 descriptor range) |
| ## + 0 (root flags) |
| ## = 108 |
| |
| # CHECK: StaticSamplersOffset: 108 |
| |
| --- !dxcontainer |
| Header: |
| Hash: [ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, |
| 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 ] |
| Version: |
| Major: 1 |
| Minor: 0 |
| PartCount: 1 |
| PartOffsets: [ 60 ] |
| Parts: |
| - Name: RTS0 |
| Size: 108 |
| RootSignature: |
| Version: 1 |
| NumRootParameters: 3 |
| RootParametersOffset: 24 |
| NumStaticSamplers: 0 |
| StaticSamplersOffset: 108 |
| Parameters: |
| - ParameterType: Constants32Bit |
| ShaderVisibility: All |
| Constants: |
| Num32BitValues: 16 |
| ShaderRegister: 15 |
| RegisterSpace: 14 |
| - ParameterType: CBV |
| ShaderVisibility: All |
| Descriptor: |
| ShaderRegister: 31 |
| RegisterSpace: 32 |
| DATA_STATIC_WHILE_SET_AT_EXECUTE: true |
| - ParameterType: DescriptorTable |
| ShaderVisibility: All |
| Table: |
| NumRanges: 1 |
| Ranges: |
| - RangeType: CBuffer |
| NumDescriptors: -1 |
| BaseShaderRegister: 42 |
| RegisterSpace: 43 |
| OffsetInDescriptorsFromTableStart: 41 |
| DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS: true |
| AllowInputAssemblerInputLayout: true |
| DenyGeometryShaderRootAccess: true |