Intel 64 and IA-32 Architectures Software Developers Manual Volume 3B, System Programming Guide Part 2

Table Of Contents
Vol. 3 H-1
APPENDIX H
FIELD ENCODING IN VMCS
Every component of the VMCS is encoded by a 32-bit field that can be used by
VMREAD and VMWRITE. Section 20.10.2 describes the structure of the encoding
space (the meanings of the bits in each 32-bit encoding).
This appendix enumerates all fields in the VMCS and their encodings. Fields are
grouped by width (16-bit, 32-bit, etc.) and type (guest-state, host-state, etc.)
H.1 16-BIT FIELDS
A value of 0 in bits 14:13 of an encoding indicates a 16-bit field. Only guest-state
areas and the host-state area contain 16-bit fields. As noted in Section 20.10.2, each
16-bit field allows only full access, meaning that bit 0 of its encoding is 0. Each such
encoding is thus an even number.
H.1.1 16-Bit Control Field
A value of 0 in bits 11:10 of an encoding indicates a control field. These fields are
distinguished by their index value in bits 9:1. There is only one such 16-bit field as
given in Table H-1.
H.1.2 16-Bit Guest-State Fields
A value of 2 in bits 11:10 of an encoding indicates a field in the guest-state area.
These fields are distinguished by their index value in bits 9:1. Table H-2 enumerates
16-bit guest-state fields.
Table H-1. Encoding for 32-Bit Control Fields (0000_00xx_xxxx_xxx0B)
Field Name Index Encoding
Virtual-processor identifier (VPID)
1
NOTES:
1. This field exists only on processors that support the 1-setting of the “enable VPID” VM-execution
control.
000000000B 00000000H
Table H-2. Encodings for 16-Bit Guest-State Fields (0000_10xx_xxxx_xxx0B)
Field Name Index Encoding
Guest ES selector 000000000B 00000800H