 IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_SourceIsMemRef)),
INSTRUCTION(XCHG4RegMem, xchg,
            BINARY(VEX_L___, VEX_vNONE, PREFIX___, REX__, ESCAPE_____, 0x87, 0, ModRM_RM__, Immediate_0),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_ModifiesSource | IA32OpProp_IntSource | IA32OpProp_IntTarget | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_SourceIsMemRef)),
INSTRUCTION(XCHG8RegMem, xchg,
            BINARY(VEX_L___, VEX_vNONE, PREFIX___, REX_W, ESCAPE_____, 0x87, 0, ModRM_RM__, Immediate_0),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_ModifiesSource | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_LongSource | IA32OpProp1_LongTarget | IA32OpProp1_SourceIsMemRef)),
INSTRUCTION(XCHG1MemReg, xchg,
            BINARY(VEX_L___, VEX_vNONE, PREFIX___, REX__, ESCAPE_____, 0x86, 0, ModRM_MR__, Immediate_0),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_ModifiesSource | IA32OpProp_ByteSource | IA32OpProp_ByteTarget | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_SupportsLockPrefix)),
INSTRUCTION(XCHG2MemReg, xchg,
            BINARY(VEX_L___, VEX_vNONE, PREFIX_66, REX__, ESCAPE_____, 0x87, 0, ModRM_MR__, Immediate_0),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_ModifiesSource | IA32OpProp_ShortSource | IA32OpProp_ShortTarget | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_SupportsLockPrefix)),
INSTRUCTION(XCHG4MemReg, xchg,
            BINARY(VEX_L___, VEX_vNONE, PREFIX___, REX__, ESCAPE_____, 0x87, 0, ModRM_MR__, Immediate_0),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_ModifiesSource | IA32OpProp_IntSource | IA32OpProp_IntTarget | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_SupportsLockPrefix)),
INSTRUCTION(XCHG8MemReg, xchg,
            BINARY(VEX_L___, VEX_vNONE, PREFIX___, REX_W, ESCAPE_____, 0x87, 0, ModRM_MR__, Immediate_0),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_ModifiesSource | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_LongSource | IA32OpProp1_LongTarget | IA32OpProp1_SupportsLockPrefix)),
INSTRUCTION(XEND, xend,
            BINARY(VEX_L___, VEX_vNONE, PREFIX___, REX__, ESCAPE_0F__, 0x01, 2, ModRM_EXT_, Immediate_0),
            PROPERTY0(0),
            PROPERTY1(0)),
INSTRUCTION(XOR1AccImm1, xor,
            BINARY(VEX_L___, VEX_vNONE, PREFIX___, REX__, ESCAPE_____, 0x34, 0, ModRM_NONE, Immediate_1),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_TargetRegisterIgnored | IA32OpProp_ByteTarget | IA32OpProp_ByteImmediate | IA32OpProp_ModifiesOverflowFlag | IA32OpProp_ModifiesSignFlag | IA32OpProp_ModifiesZeroFlag | IA32OpProp_ModifiesParityFlag | IA32OpProp_ModifiesCarryFlag | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_SetsCCForTest)),
INSTRUCTION(XOR2AccImm2, xor,
            BINARY(VEX_L___, VEX_vNONE, PREFIX_66, REX__, ESCAPE_____, 0x35, 0, ModRM_NONE, Immediate_2),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_TargetRegisterIgnored | IA32OpProp_ShortTarget | IA32OpProp_ShortImmediate | IA32OpProp_ModifiesOverflowFlag | IA32OpProp_ModifiesSignFlag | IA32OpProp_ModifiesZeroFlag | IA32OpProp_ModifiesParityFlag | IA32OpProp_ModifiesCarryFlag | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_SetsCCForTest)),
INSTRUCTION(XOR4AccImm4, xor,
            BINARY(VEX_L___, VEX_vNONE, PREFIX___, REX__, ESCAPE_____, 0x35, 0, ModRM_NONE, Immediate_4),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_TargetRegisterIgnored | IA32OpProp_IntTarget | IA32OpProp_IntImmediate | IA32OpProp_ModifiesOverflowFlag | IA32OpProp_ModifiesSignFlag | IA32OpProp_ModifiesZeroFlag | IA32OpProp_ModifiesParityFlag | IA32OpProp_ModifiesCarryFlag | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_SetsCCForTest)),
INSTRUCTION(XOR8AccImm4, xor,
            BINARY(VEX_L___, VEX_vNONE, PREFIX___, REX_W, ESCAPE_____, 0x35, 0, ModRM_NONE, Immediate_4),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_TargetRegisterIgnored | IA32OpProp_IntImmediate | IA32OpProp_ModifiesOverflowFlag | IA32OpProp_ModifiesSignFlag | IA32OpProp_ModifiesZeroFlag | IA32OpProp_ModifiesParityFlag | IA32OpProp_ModifiesCarryFlag | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_SetsCCForTest | IA32OpProp1_LongTarget)),
INSTRUCTION(XOR1RegImm1, xor,
            BINARY(VEX_L___, VEX_vNONE, PREFIX___, REX__, ESCAPE_____, 0x80, 6, ModRM_EXT_, Immediate_1),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_TargetRegisterInModRM | IA32OpProp_ByteTarget | IA32OpProp_ByteImmediate | IA32OpProp_ModifiesOverflowFlag | IA32OpProp_ModifiesSignFlag | IA32OpProp_ModifiesZeroFlag | IA32OpProp_ModifiesParityFlag | IA32OpProp_ModifiesCarryFlag | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_SetsCCForTest)),
INSTRUCTION(XOR2RegImm2, xor,
            BINARY(VEX_L___, VEX_vNONE, PREFIX_66, REX__, ESCAPE_____, 0x81, 6, ModRM_EXT_, Immediate_2),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_TargetRegisterInModRM | IA32OpProp_ShortTarget | IA32OpProp_ShortImmediate | IA32OpProp_ModifiesOverflowFlag | IA32OpProp_ModifiesSignFlag | IA32OpProp_ModifiesZeroFlag | IA32OpProp_ModifiesParityFlag | IA32OpProp_ModifiesCarryFlag | IA32OpProp_UsesTarget),
            PROPERTY1(IA32OpProp1_SetsCCForTest)),
INSTRUCTION(XOR2RegImms, xor,
            BINARY(VEX_L___, VEX_vNONE, PREFIX_66, REX__, ESCAPE_____, 0x83, 6, ModRM_EXT_, Immediate_S),
            PROPERTY0(IA32OpProp_ModifiesTarget | IA32OpProp_TargetRegisterInModRM | IA32OpProp_ShortTarget | IA32OpProp_SignExtendImmediate