| ## Check that the PRIV part round-trips through yaml2obj and obj2yaml when the | |
| ## part size is not a multiple of 4. The pipeline is run twice to ensure obj2yaml | |
| ## output with a non-multiple-of-4 FileSize can be fed back through yaml2obj. | |
| # RUN: yaml2obj %s -o %t.dxbc | |
| # RUN: obj2yaml %t.dxbc | yaml2obj -o %t2.dxbc | |
| # RUN: obj2yaml %t2.dxbc | FileCheck %s | |
| --- !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: 2 | |
| Parts: | |
| - Name: DXIL | |
| Size: 24 | |
| Program: | |
| MajorVersion: 6 | |
| MinorVersion: 0 | |
| ShaderKind: 5 | |
| Size: 6 | |
| DXILMajorVersion: 0 | |
| DXILMinorVersion: 1 | |
| DXILSize: 0 | |
| - Name: PRIV | |
| Size: 5 | |
| PrivateData: [ 0xDE, 0xAD, 0xBE, 0xEF, 0x42 ] | |
| ... | |
| # CHECK: FileSize: 85 | |
| # CHECK: PartCount: 2 | |
| # CHECK: PartOffsets: [ 40, 72 ] | |
| # CHECK: Parts: | |
| # CHECK: - Name: DXIL | |
| # CHECK: Program: | |
| # CHECK: MajorVersion: 6 | |
| # CHECK: MinorVersion: 0 | |
| # CHECK: ShaderKind: 5 | |
| # CHECK: - Name: PRIV | |
| # CHECK: Size: 5 | |
| # CHECK: PrivateData: [ 0xDE, 0xAD, 0xBE, 0xEF, 0x42 ] |