mirror of
https://github.com/danbulant/Cosmos
synced 2026-05-22 05:48:37 +00:00
fix current build
This commit is contained in:
parent
04deecf867
commit
a0262e054f
14 changed files with 266 additions and 11 deletions
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/AndPS.cs
Normal file
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/AndPS.cs
Normal 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 }
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
17
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/ComparePS.cs
Normal file
17
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/ComparePS.cs
Normal 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 }
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/CompareSS.cs
Normal file
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/CompareSS.cs
Normal 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 }
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/Enums.cs
Normal file
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/Enums.cs
Normal 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
|
||||
}
|
||||
}
|
||||
|
|
@ -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
|
||||
{
|
||||
}
|
||||
}
|
||||
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MaxSS.cs
Normal file
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MaxSS.cs
Normal 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 }
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MinSS.cs
Normal file
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MinSS.cs
Normal 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 }
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
24
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MoveAPS.cs
Normal file
24
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MoveAPS.cs
Normal 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 }
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MoveHLPS.cs
Normal file
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MoveHLPS.cs
Normal 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 }
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
23
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MoveHPS.cs
Normal file
23
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MoveHPS.cs
Normal 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 }
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MoveLHPS.cs
Normal file
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MoveLHPS.cs
Normal 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 }
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
24
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MoveUPS.cs
Normal file
24
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/MoveUPS.cs
Normal 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 }
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/XorPD.cs
Normal file
19
source2/IL2PCU/Cosmos.IL2CPU.X86/X86/SSEAndMMX2/XorPD.cs
Normal 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}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in a new issue