#BEGIN_LEGAL
#
#Copyright (c) 2020 Intel Corporation
#
#  Licensed under the Apache License, Version 2.0 (the "License");
#  you may not use this file except in compliance with the License.
#  You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.
#  
#END_LEGAL
INSTRUCTIONS()::
{
ICLASS    : VMRUN
CPL       : 3
CATEGORY  : SYSTEM
EXTENSION : SVM
ATTRIBUTES: PROTECTED_MODE AMDONLY
PATTERN   : 0x0F 0x01 MOD[0b11] MOD=3 REG[0b011] RM[0b000]
OPERANDS  : REG0=ArAX():r:IMPL
}
{
ICLASS    : VMMCALL
CPL       : 3
CATEGORY  : SYSTEM
EXTENSION : SVM
ATTRIBUTES : AMDONLY
PATTERN   : 0x0F 0x01 MOD[0b11] MOD=3 REG[0b011] RM[0b001]
OPERANDS  : 
}
{
ICLASS    : VMLOAD
CPL       : 3
CATEGORY  : SYSTEM
EXTENSION : SVM
ATTRIBUTES: PROTECTED_MODE AMDONLY
PATTERN   : 0x0F 0x01 MOD[0b11] MOD=3 REG[0b011] RM[0b010]
OPERANDS  : REG0=ArAX():r:IMPL
}
{
ICLASS    : VMSAVE
CPL       : 3
CATEGORY  : SYSTEM
EXTENSION : SVM
ATTRIBUTES: PROTECTED_MODE AMDONLY
PATTERN   : 0x0F 0x01 MOD[0b11] MOD=3 REG[0b011] RM[0b011]
OPERANDS  : 
}
{
ICLASS    : STGI
CPL       : 3
CATEGORY  : SYSTEM
EXTENSION : SVM
ATTRIBUTES: PROTECTED_MODE AMDONLY
PATTERN   : 0x0F 0x01 MOD[0b11] MOD=3 REG[0b011] RM[0b100]
OPERANDS  : 
}
{
ICLASS    : CLGI
CPL       : 3
CATEGORY  : SYSTEM
EXTENSION : SVM
ATTRIBUTES: PROTECTED_MODE AMDONLY
PATTERN   : 0x0F 0x01 MOD[0b11] MOD=3 REG[0b011] RM[0b101]
OPERANDS  : 
}
{
ICLASS    : SKINIT
CPL       : 3
CATEGORY  : SYSTEM
EXTENSION : SVM
ATTRIBUTES: PROTECTED_MODE AMDONLY
PATTERN   : 0x0F 0x01 MOD[0b11] MOD=3 REG[0b011] RM[0b110] 
OPERANDS  : REG0=XED_REG_EAX:r:IMPL
}
{
ICLASS    : INVLPGA
CPL       : 0
CATEGORY  : SYSTEM
EXTENSION : SVM
ATTRIBUTES: PROTECTED_MODE AMDONLY
PATTERN   : 0x0F 0x01 MOD[0b11] MOD=3 REG[0b011] RM[0b111] 
OPERANDS  : REG0=ArAX():r:IMPL REG1=XED_REG_ECX:r:IMPL
}
