fix current build

This commit is contained in:
Dokugogagoji_cp 2009-11-03 17:18:47 +00:00
parent 04deecf867
commit a0262e054f
14 changed files with 266 additions and 11 deletions

View file

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
[OpCode("andps")]
public class AndPS : InstructionWithDestinationAndSource
{
public static void InitializeEncodingData(Instruction.InstructionData aData)
{
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x0F, 0x54 }
});
}
}
}

View file

@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
[OpCode("cmpps")]
public class ComparePS : InstructionWithDestinationAndSourceAndPseudoOpcodes
{
public static void InitializeEncodingData(Instruction.InstructionData aData) {
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption {
OpCode = new byte[] { 0x0F,0xC2 }
});
}
}
}

View file

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
[OpCode("cmpss")]
public class CompareSS : InstructionWithDestinationAndSourceAndPseudoOpcodes
{
public static void InitializeEncodingData(Instruction.InstructionData aData)
{
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0xF3,0x0F,0xC2 }
});
}
}
}

View file

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
public enum ComparePseudoOpcodes : byte
{
Equal = 0,
LessThan = 1,
LessThanOrEqualTo = 2,
Unordered = 3,
NotEqual = 4,
NotLessThan = 5,
NotLessThanOrEqualTo = 6,
Ordered = 7
}
}

View file

@ -1,11 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.X86.SSEAndMMX2
{
public class FloatLoad : InstructionWithDestination
{
}
}

View file

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
[OpCode("maxss")]
public class MaxSS : InstructionWithDestinationAndSource
{
public static void InitializeEncodingData(Instruction.InstructionData aData)
{
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x66, 0x0F, 0x57 }
});
}
}
}

View file

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
[OpCode("minss")]
public class MinSS : InstructionWithDestinationAndSource
{
public static void InitializeEncodingData(Instruction.InstructionData aData)
{
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0xF3, 0x0F, 0x5D }
});
}
}
}

View file

@ -0,0 +1,24 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
[OpCode("movaps")]
public class MoveAPS : InstructionWithDestinationAndSource
{
public static void InitializeEncodingData(Instruction.InstructionData aData)
{
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x0F, 0x28}
});
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x0F, 0x29 }
});
}
}
}

View file

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
[OpCode("movhlps")]
public class MoveHLPS : InstructionWithDestinationAndSource
{
public static void InitializeEncodingData(Instruction.InstructionData aData)
{
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x0F, 0x12 }
});
}
}
}

View file

@ -0,0 +1,23 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
[OpCode("movhps")]
public class MoveHPS : InstructionWithDestinationAndSource
{
public static void InitializeEncodingData(Instruction.InstructionData aData)
{
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x0F, 0x16 }
});
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x0F, 0x17 }
});
}
}
}

View file

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
[OpCode("movlhps")]
public class MoveLHPS : InstructionWithDestinationAndSource
{
public static void InitializeEncodingData(Instruction.InstructionData aData)
{
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x0F, 0x16 }
});
}
}
}

View file

@ -0,0 +1,24 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
[OpCode("movups")]
public class MoveUPS : InstructionWithDestinationAndSource
{
public static void InitializeEncodingData(Instruction.InstructionData aData)
{
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x0F, 0x10 }
});
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x0F, 0x11 }
});
}
}
}

View file

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
public class XorPD : InstructionWithDestinationAndSource
{
public static void InitializeEncodingData(Instruction.InstructionData aData)
{
aData.EncodingOptions.Add(new InstructionData.InstructionEncodingOption
{
OpCode = new byte[] { 0x66, 0x0F,0x57}
});
}
}
}

View file

@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Cosmos.IL2CPU.X86.SSE
{
public abstract class InstructionWithDestinationAndSourceAndPseudoOpcodes : InstructionWithDestinationAndSource
{
public byte pseudoOpcode
{
get;
set;
}
public override void WriteText(Assembler aAssembler, System.IO.TextWriter aOutput)
{
aOutput.Write(mMnemonic);
aOutput.Write(" ");
aOutput.Write(this.GetDestinationAsString());
aOutput.Write(", ");
aOutput.Write(this.GetSourceAsString());
aOutput.Write(", ");
aOutput.Write(this.pseudoOpcode);
}
}
}