Cosmos/source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSE2/XorPD.cs

29 lines
1.2 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
[OpCode("xorpd")]
public class XorPD : InstructionWithDestinationAndSource
{
public static void InitializeEncodingData(Instruction.InstructionData aData)
{
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x66, 0x0F,0x57},
NeedsModRMByte = true,
DestinationImmediate = false,
SourceImmediate = false,
DestinationMemory = false,
SourceMemory = true,
DestinationReg = RegistersEnum.XMM0 | RegistersEnum.XMM1 | RegistersEnum.XMM2 | RegistersEnum.XMM3 | RegistersEnum.XMM4 | RegistersEnum.XMM5 | RegistersEnum.XMM6 | RegistersEnum.XMM7,
InitialModRMByteValue = 0x08,
SourceReg = RegistersEnum.XMM0 | RegistersEnum.XMM1 | RegistersEnum.XMM2 | RegistersEnum.XMM3 | RegistersEnum.XMM4 | RegistersEnum.XMM5 | RegistersEnum.XMM6 | RegistersEnum.XMM7,
ReverseRegisters = true
});
}
}
}