diff --git a/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/DisableInterrupts.cs b/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/DisableInterrupts.cs deleted file mode 100644 index c4a885b73..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/DisableInterrupts.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86._8087Exclusive -{ - class DisableInterrupts - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/DisableInterruptsNoWait.cs b/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/DisableInterruptsNoWait.cs deleted file mode 100644 index f25be336e..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/DisableInterruptsNoWait.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86._8087Exclusive -{ - class DisableInterruptsNoWait - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/EnableInterrupts.cs b/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/EnableInterrupts.cs deleted file mode 100644 index 7cf44d023..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/EnableInterrupts.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86._8087Exclusive -{ - class EnableInterrupts - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/EnableInterruptsNoWait.cs b/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/EnableInterruptsNoWait.cs deleted file mode 100644 index c80a09221..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/8087Exclusive/EnableInterruptsNoWait.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86._8087Exclusive -{ - class EnableInterruptsNoWait - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/Abs.cs b/source/Indy.IL2CPU.Assembler.X86/x87/Abs.cs deleted file mode 100644 index a10a6c67c..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/Abs.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class Abs - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/ChangeSign.cs b/source/Indy.IL2CPU.Assembler.X86/x87/ChangeSign.cs deleted file mode 100644 index 71add306b..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/ChangeSign.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class ChangeSign - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/ClearExceptions.cs b/source/Indy.IL2CPU.Assembler.X86/x87/ClearExceptions.cs deleted file mode 100644 index b88cad834..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/ClearExceptions.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class ClearExceptions - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/ClearExceptionsNoWait.cs b/source/Indy.IL2CPU.Assembler.X86/x87/ClearExceptionsNoWait.cs deleted file mode 100644 index 599917283..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/ClearExceptionsNoWait.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class ClearExceptionsNoWait - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/DecFloatSP.cs b/source/Indy.IL2CPU.Assembler.X86/x87/DecFloatSP.cs deleted file mode 100644 index 27ea35605..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/DecFloatSP.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class DecFloatSP - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/FloatAdd.cs b/source/Indy.IL2CPU.Assembler.X86/x87/FloatAdd.cs deleted file mode 100644 index af69970d2..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/FloatAdd.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class FloatAdd - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/FloatAddPop.cs b/source/Indy.IL2CPU.Assembler.X86/x87/FloatAddPop.cs deleted file mode 100644 index bc826109f..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/FloatAddPop.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class FloatAddPop - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/FloatCmp.cs b/source/Indy.IL2CPU.Assembler.X86/x87/FloatCmp.cs deleted file mode 100644 index a0315acb2..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/FloatCmp.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class FloatCmp - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/FloatCmpDPop.cs b/source/Indy.IL2CPU.Assembler.X86/x87/FloatCmpDPop.cs deleted file mode 100644 index 84989d60a..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/FloatCmpDPop.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class FloatCmpDPop - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/FloatCmpPop.cs b/source/Indy.IL2CPU.Assembler.X86/x87/FloatCmpPop.cs deleted file mode 100644 index b9921835a..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/FloatCmpPop.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class FloatCmpPop - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/FloatCos.cs b/source/Indy.IL2CPU.Assembler.X86/x87/FloatCos.cs deleted file mode 100644 index a8ab915a7..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/FloatCos.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class FloatCos - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/FloatDiv.cs b/source/Indy.IL2CPU.Assembler.X86/x87/FloatDiv.cs deleted file mode 100644 index e565c4f94..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/FloatDiv.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class FloatDiv - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/FloatDivPop.cs b/source/Indy.IL2CPU.Assembler.X86/x87/FloatDivPop.cs deleted file mode 100644 index d13f9082d..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/FloatDivPop.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class FloatDivPop - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/FloatDivReverse.cs b/source/Indy.IL2CPU.Assembler.X86/x87/FloatDivReverse.cs deleted file mode 100644 index 828e8e28f..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/FloatDivReverse.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class FloatDivReverse - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/FloatDivReversePop.cs b/source/Indy.IL2CPU.Assembler.X86/x87/FloatDivReversePop.cs deleted file mode 100644 index 3442385e5..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/FloatDivReversePop.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class FloatDivReversePop - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/FreeReg.cs b/source/Indy.IL2CPU.Assembler.X86/x87/FreeReg.cs deleted file mode 100644 index 3a4366c22..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/FreeReg.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class FreeReg - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/IncFloatSP.cs b/source/Indy.IL2CPU.Assembler.X86/x87/IncFloatSP.cs deleted file mode 100644 index f453e4a46..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/IncFloatSP.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class IncFloatSP - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/InitFloat.cs b/source/Indy.IL2CPU.Assembler.X86/x87/InitFloat.cs deleted file mode 100644 index 623edff13..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/InitFloat.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class InitFloat - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/IntAdd.cs b/source/Indy.IL2CPU.Assembler.X86/x87/IntAdd.cs deleted file mode 100644 index 2533f5503..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/IntAdd.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class IntAdd - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/IntCmp.cs b/source/Indy.IL2CPU.Assembler.X86/x87/IntCmp.cs deleted file mode 100644 index 07075b8a3..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/IntCmp.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class IntCmp - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/IntCmpPop.cs b/source/Indy.IL2CPU.Assembler.X86/x87/IntCmpPop.cs deleted file mode 100644 index 5601006e1..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/IntCmpPop.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class IntCmpPop - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/IntDiv.cs b/source/Indy.IL2CPU.Assembler.X86/x87/IntDiv.cs deleted file mode 100644 index efc6e4a85..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/IntDiv.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class IntDiv - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/IntDivReverse.cs b/source/Indy.IL2CPU.Assembler.X86/x87/IntDivReverse.cs deleted file mode 100644 index 356258798..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/IntDivReverse.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class IntDivReverse - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/IntMul.cs b/source/Indy.IL2CPU.Assembler.X86/x87/IntMul.cs deleted file mode 100644 index b1477bcf6..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/IntMul.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class IntMul - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/IntSub.cs b/source/Indy.IL2CPU.Assembler.X86/x87/IntSub.cs deleted file mode 100644 index c764d7efa..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/IntSub.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class IntSub - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/IntSubPop.cs b/source/Indy.IL2CPU.Assembler.X86/x87/IntSubPop.cs deleted file mode 100644 index 787b6abab..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/IntSubPop.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class IntSubPop - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/LoadBCD.cs b/source/Indy.IL2CPU.Assembler.X86/x87/LoadBCD.cs deleted file mode 100644 index d9cf1f763..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/LoadBCD.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class LoadBCD - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/LoadInt.cs b/source/Indy.IL2CPU.Assembler.X86/x87/LoadInt.cs deleted file mode 100644 index ad1faec3e..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/LoadInt.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class LoadInt - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/StorIntPop.cs b/source/Indy.IL2CPU.Assembler.X86/x87/StorIntPop.cs deleted file mode 100644 index 0cee1c77d..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/StorIntPop.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class StorIntPop - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/StoreBCDPop.cs b/source/Indy.IL2CPU.Assembler.X86/x87/StoreBCDPop.cs deleted file mode 100644 index 7138a3c17..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/StoreBCDPop.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class StoreBCDPop - { - } -} diff --git a/source/Indy.IL2CPU.Assembler.X86/x87/StoreInt.cs b/source/Indy.IL2CPU.Assembler.X86/x87/StoreInt.cs deleted file mode 100644 index ca9978629..000000000 --- a/source/Indy.IL2CPU.Assembler.X86/x87/StoreInt.cs +++ /dev/null @@ -1,11 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - -namespace Indy.IL2CPU.Assembler.X86.x87 -{ - class StoreInt - { - } -} diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/AddTests.cs b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/AddTests.cs similarity index 99% rename from source/Indy.IL2CPU.Tests/Assembler/X86/AddTests.cs rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/AddTests.cs index 6d9500bfc..3e0c6ff33 100644 --- a/source/Indy.IL2CPU.Tests/Assembler/X86/AddTests.cs +++ b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/AddTests.cs @@ -5,7 +5,7 @@ using System.Text; using NUnit.Framework; using Indy.IL2CPU.Assembler.X86; -namespace Indy.IL2CPU.Tests.Assembler.X86 { +namespace Indy.IL2CPU.Tests.AssemblerTests.X86 { [TestFixture] public class AddTests : BaseTest { /* diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/BaseTest.cs b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/BaseTest.cs similarity index 96% rename from source/Indy.IL2CPU.Tests/Assembler/X86/BaseTest.cs rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/BaseTest.cs index d3d41240d..f2ae0def7 100644 --- a/source/Indy.IL2CPU.Tests/Assembler/X86/BaseTest.cs +++ b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/BaseTest.cs @@ -6,7 +6,7 @@ using System.Text; using NUnit.Framework; using System.IO; -namespace Indy.IL2CPU.Tests.Assembler.X86 { +namespace Indy.IL2CPU.Tests.AssemblerTests.X86 { public abstract class BaseTest { public Indy.IL2CPU.Assembler.X86.Assembler Assembler { get; diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/HaltTests.cs b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/HaltTests.cs similarity index 82% rename from source/Indy.IL2CPU.Tests/Assembler/X86/HaltTests.cs rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/HaltTests.cs index 46d137f76..5665c73a3 100644 --- a/source/Indy.IL2CPU.Tests/Assembler/X86/HaltTests.cs +++ b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/HaltTests.cs @@ -5,7 +5,7 @@ using System.Text; using Indy.IL2CPU.Assembler.X86; using NUnit.Framework; -namespace Indy.IL2CPU.Tests.Assembler.X86 { +namespace Indy.IL2CPU.Tests.AssemblerTests.X86 { [TestFixture] public class HaltTests: BaseTest { [Test] diff --git a/source/Indy.IL2CPU.Tests/AssemblerTests/X86/InvalidOpcodeTester.cs b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/InvalidOpcodeTester.cs new file mode 100644 index 000000000..9bba7abf1 --- /dev/null +++ b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/InvalidOpcodeTester.cs @@ -0,0 +1,1060 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Indy.IL2CPU.Assembler; +using Indy.IL2CPU.Assembler.X86; +using System.Reflection; +using System.IO; +using System.Diagnostics; + +namespace Indy.IL2CPU.Tests.AssemblerTests.X86 +{ + public partial class InvalidOpcodeTester + { + //PS. 16 bit registers function INCLUDES segment registers and pointers + //PS2. By default, Control registers ARE NOT TESTED with the opcode. To test him, add a constraint with testCR = true on the opcode you wish to test + //PS3. Do not add control register as invalid register since testCR handles this. + //PS4. SSE/MMX instruction uses MM/XMM registers. You should not specify any constrains as it is automatically covered by checking the instruction namespace. + class ConstraintsContainer { + public Constraints SourceInfo; + public Constraints DestInfo; + public int[] InvalidSizes; + } + + class Constraints + { + public bool TestMem32=true; + public bool TestMem16=true; + public bool TestMem8=true; + public bool TestImmediate8=true; + public bool TestImmediate16=true; + public bool TestImmediate32=true; + public bool TestRegisters = true; + public bool TestCR=true; + public IEnumerable InvalidRegisters; + } + + + private static string nasmPath; + private static Dictionary opcodesException; + + public static Indy.IL2CPU.Assembler.X86.Assembler x86Assembler + { + get; + private set; + } + + private static void Execute() + { + //Pre-initialization + if (!Directory.Exists(Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location), + "Output"))) + { + Directory.CreateDirectory(Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location), + "Output")); + } + nasmPath = Directory.GetCurrentDirectory().ToLowerInvariant(); + int xPos = nasmPath.LastIndexOf("source"); + nasmPath = nasmPath.Substring(0, xPos) + @"Build\Tools\NAsm\nasm.exe"; + + opcodesException = new Dictionary(); + //public Constraints(bool testMem32, bool testMem16, bool testImmediate8, bool testImmediate16, bool testImmediate32, bool testCR, List invalidDestRegisters) + opcodesException.Add(typeof(Pop), new ConstraintsContainer { DestInfo = new Constraints { InvalidRegisters = Registers.Get8BitRegisters().Union(Registers.Get16BitRegisters()) } }); + //opcodesException.Add(typeof(Assembler.X86.)); + // + x86Assembler=new Assembler.X86.Assembler(); + x86Assembler.Initialize(); + x86Assembler.Instructions.Clear(); + x86Assembler.DataMembers.Clear(); + //Determine opcodes + Assembly xAsm = Assembly.Load("Indy.IL2CPU"); + foreach (Type type in xAsm.GetTypes()) + { + try + { + if (type.IsAbstract) + continue; + else + { + if (type.BaseType == typeof(Assembler.X86.InstructionWithDestination)) + { + Console.WriteLine("Testing " + type.ToString()); + TestInstructionWithDestination(type); + } + else if (type.BaseType == typeof(Assembler.X86.InstructionWithDestinationAndSize)) + { + Console.WriteLine("Testing " + type.ToString()); + TestInstructionWithDestinationAndSize(type); + } + else if (type.BaseType == typeof(Assembler.X86.InstructionWithDestinationAndSource)) + { + Console.WriteLine("Testing " + type.ToString()); + TestInstructionWithDestinationAndSource(type); + } + else if (type.BaseType == typeof(Assembler.X86.InstructionWithDestinationAndSourceAndSize)) + { + Console.WriteLine("Testing " + type.ToString()); + TestInstructionWithDestinationAndSourceAndSize(type); + } + else if (type.BaseType == typeof(Assembler.X86.Instruction)) + { + Console.WriteLine("Testing " + type.ToString()); + TestSimpleInstruction(type); + } + } + + } + catch (Exception e) + { + Console.Beep(); + Console.ForegroundColor = ConsoleColor.Red; + Console.WriteLine(type.ToString() + ": " + e.Message); + //Console.ReadLine(); + + } + finally + { + x86Assembler.Instructions.Clear(); + x86Assembler.DataMembers.Clear(); + Console.ResetColor(); + } + } + //Define constraints + Console.WriteLine("Tests finished!"); + Console.ReadLine(); + } + private static void TestInstructionWithDestination(Type type) + { + TestInstructionWithDestination(type, 0, null); + } + + private static T CreateInstruction(Type t, byte aSize) { + var xResult = (T)Activator.CreateInstance(t); + if(aSize!=0) { + ((IInstructionWithSize)xResult).Size = aSize; + } + return xResult; + } + + private static void TestInstructionWithDestination(Type type, byte size, Action aInitInstruction) + { + Console.ForegroundColor=ConsoleColor.Yellow; + if(aInitInstruction==null) { + aInitInstruction = delegate { }; + } + IInstructionWithDestination xInstruction=null; + //Test Immediate 8 + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].DestInfo.TestImmediate8)) + { + xInstruction = CreateInstruction(type, size); + xInstruction.DestinationValue = 30; + aInitInstruction(xInstruction); + Console.Write("\t --> Immediate 8: "); + computeResult(); + } + + //Test Immediate 16 + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].DestInfo.TestImmediate16)) + { + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 300; + Console.Write("\t --> Immediate 16: "); + computeResult(); + } + //Test Immediate 32 + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].DestInfo.TestImmediate32)) + { + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 300000; + Console.Write("\t --> Immediate 32: "); + computeResult(); + } + //memory 8 bits + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].DestInfo.TestMem8)) { + //no offset + Console.WriteLine("\t --> Mem"); + Console.Write("\t\t --> no offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 65; + xInstruction.DestinationIsIndirect = true; + computeResult(); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 65; + xInstruction.DestinationIsIndirect=true; + xInstruction.DestinationDisplacement = 203; + computeResult(); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 65; + xInstruction.DestinationIsIndirect=true; + xInstruction.DestinationDisplacement = 2030; + computeResult(); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 65; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement=70000; + computeResult(); + } + //memory 16 bits + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].DestInfo.TestMem16)) + { + //no offset + Console.WriteLine("\t --> Mem16"); + Console.Write("\t\t --> no offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 650; + xInstruction.DestinationIsIndirect=true; + computeResult(); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 650; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 203; + computeResult(); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 650; + xInstruction.DestinationIsIndirect=true; + xInstruction.DestinationDisplacement = 2003; + computeResult(); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 650; + xInstruction.DestinationIsIndirect=true; + xInstruction.DestinationDisplacement = 70000; + computeResult(); + } + // mem32 + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].DestInfo.TestMem32)) { + //no offset + Console.WriteLine("\t --> Mem32"); + Console.Write("\t\t --> no offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 650000; + xInstruction.DestinationIsIndirect = true; + computeResult(); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 650000; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 203; + computeResult(); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 650000; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 2003; + computeResult(); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationValue = 650000; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 70000; + computeResult(); + } + if(!opcodesException.ContainsKey(type) || opcodesException[type].DestInfo.TestRegisters) { + var xRegistersToSkip = new List(); + if (opcodesException.ContainsKey(type) && opcodesException[type].DestInfo.InvalidRegisters!=null) { + xRegistersToSkip.AddRange(opcodesException[type].DestInfo.InvalidRegisters); + } + foreach(var xReg in Registers.GetRegisters()) { + if (xRegistersToSkip.Contains(xReg)) { + continue; + } + //memory 8 bits + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].DestInfo.TestMem8)) { + //no offset + Console.WriteLine("\t --> Reg-Mem8"); + Console.Write("\t\t --> no offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + computeResult(); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 203; + computeResult(); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 2030; + computeResult(); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 70000; + computeResult(); + } + //memory 16 bits + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].DestInfo.TestMem16)) { + //no offset + Console.WriteLine("\t --> Reg-Mem16"); + Console.Write("\t\t --> no offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + computeResult(); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 203; + computeResult(); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 2003; + computeResult(); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 70000; + computeResult(); + } + // mem32 + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].DestInfo.TestMem32)) { + //no offset + Console.WriteLine("\t --> Reg-Mem32"); + Console.Write("\t\t --> no offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + computeResult(); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 203; + computeResult(); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 2003; + computeResult(); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = xReg; + xInstruction.DestinationIsIndirect = true; + xInstruction.DestinationDisplacement = 70000; + computeResult(); + } + } + } + + Console.ForegroundColor = ConsoleColor.Cyan; + Console.WriteLine("\tRegisters"); + foreach (Guid register in Registers.GetRegisters()) { + if (!type.Namespace.Contains("SSE") && (Registers.getXMMs().Contains(register))) + continue; + if (Registers.getCRs().Contains(register) && (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && (!opcodesException[type].DestInfo.TestCR)))) + continue; + if (Registers.GetRegisters().Contains(register) && (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && (!opcodesException[type].DestInfo.InvalidRegisters.Contains(register))))) + continue; + xInstruction = CreateInstruction(type, size); + aInitInstruction(xInstruction); + xInstruction.DestinationReg = register; + computeResult(); + } + } + + private static void TestInstructionWithSource(Type type, byte size) { + Console.ForegroundColor = ConsoleColor.Yellow; + //Test Immediate 8 + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].SourceInfo.TestImmediate8)) { + Console.Write("\t --> Immediate 8: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 30; + }); + } + + //Test Immediate 16 + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].SourceInfo.TestImmediate16)) { + Console.Write("\t --> Immediate 16: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 300; + }); + } + //Test Immediate 32 + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].SourceInfo.TestImmediate32)) { + Console.Write("\t --> Immediate 32: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 300000; + }); + } + //memory 8 bits + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].SourceInfo.TestMem8)) { + //no offset + Console.WriteLine("\t --> Mem"); + Console.Write("\t\t --> no offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 65; + xInstruction.SourceIsIndirect = true; + } + ); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 65; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 203; + }); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 65; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 2030; + }); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 65; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 70000; + }); + } + //memory 16 bits + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].SourceInfo.TestMem16)) { + //no offset + Console.WriteLine("\t --> Mem16"); + Console.Write("\t\t --> no offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 650; + xInstruction.SourceIsIndirect = true; + }); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 650; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 203; + }); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 650; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 2003; + }); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 650; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 70000; + }); + } + // mem32 + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].SourceInfo.TestMem32)) { + //no offset + Console.WriteLine("\t --> Mem32"); + Console.Write("\t\t --> no offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 650000; + xInstruction.SourceIsIndirect = true; + }); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 650000; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 203; + }); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 650000; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 2003; + }); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceValue = 650000; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 70000; + }); + } + if (!opcodesException.ContainsKey(type) || opcodesException[type].SourceInfo.TestRegisters) { + var xRegistersToSkip = new List(); + if (opcodesException.ContainsKey(type) && opcodesException[type].SourceInfo.InvalidRegisters != null) { + xRegistersToSkip.AddRange(opcodesException[type].SourceInfo.InvalidRegisters); + } + foreach (var xReg in Registers.GetRegisters()) { + if (xRegistersToSkip.Contains(xReg)) { + continue; + } + //memory 8 bits + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].SourceInfo.TestMem8)) { + //no offset + Console.WriteLine("\t --> Reg-Mem8"); + Console.Write("\t\t --> no offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + }); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 203; + }); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 2030; + }); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 70000; + }); + } + //memory 16 bits + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].SourceInfo.TestMem16)) { + //no offset + Console.WriteLine("\t --> Reg-Mem16"); + Console.Write("\t\t --> no offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + }); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 203; + }); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 2003; + }); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 70000; + }); + } + // mem32 + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].SourceInfo.TestMem32)) { + //no offset + Console.WriteLine("\t --> Reg-Mem32"); + Console.Write("\t\t --> no offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + }); + //offset 8 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 8bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 203; + }); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 2003; + }); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = xReg; + xInstruction.SourceIsIndirect = true; + xInstruction.SourceDisplacement = 70000; + }); + } + } + } + + Console.ForegroundColor = ConsoleColor.Cyan; + Console.WriteLine("\tRegisters"); + foreach (Guid register in Registers.GetRegisters()) { + if (!type.Namespace.Contains("SSE") && (Registers.getXMMs().Contains(register))) + continue; + if (Registers.getCRs().Contains(register) && (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && (!opcodesException[type].SourceInfo.TestCR)))) + continue; + if (Registers.GetRegisters().Contains(register) && (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && (!opcodesException[type].SourceInfo.InvalidRegisters.Contains(register))))) + continue; + TestInstructionWithDestination(type, size, delegate(IInstructionWithDestination aInstruction) { + var xInstruction = (IInstructionWithSource)aInstruction; + xInstruction.SourceReg = register; + }); + } + } + + private static void TestInstructionWithDestinationAndSize(Type type) + { + Console.ForegroundColor=ConsoleColor.Cyan; + Console.WriteLine("-->Size 8"); + TestInstructionWithDestination(type, 8, null); + Console.ForegroundColor = ConsoleColor.Cyan; + Console.WriteLine("-->Size 16"); + TestInstructionWithDestination(type, 16, null); + Console.ForegroundColor = ConsoleColor.Cyan; + Console.WriteLine("-->Size 32"); + TestInstructionWithDestination(type, 32, null); + } + + private static void TestInstructionWithDestinationAndSource(Type type) + { + TestInstructionWithDestinationAndSource(type, 0); + } + + private static void TestInstructionWithDestinationAndSource(Type type, byte size) + { + PropertyInfo source = type.GetProperty("SourceValue"); + PropertyInfo sindirect = type.GetProperty("SourceIsIndirect"); + PropertyInfo sreg = type.GetProperty("SourceReg"); + /* + Console.ForegroundColor = ConsoleColor.Yellow; + //Test Immediate 8-->reg + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].testImmediate8)) + { + var test = Activator.CreateInstance(type); + dest.SetValue(test, (UInt32)30, new object[0]); + if (size != 0) + psize.SetValue(test, size, new object[0]); + Console.Write("\t --> Immediate 8: "); + if (Verify()) + Console.Write("OK!"); + else + Console.Write("Wrong data emitted"); + Console.WriteLine(); + } + + //Test Immediate 16 + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].testImmediate16)) + { + var test = Activator.CreateInstance(type); + if (size != 0) + psize.SetValue(test, size, new object[0]); + dest.SetValue(test, (UInt32)300, new object[0]); + Console.Write("\t --> Immediate 16: "); + if (Verify()) + Console.Write("OK!"); + else + Console.Write("Wrong data emitted"); + Console.WriteLine(); + } + //Test Immediate 32 + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].testImmediate16)) + { + var test = Activator.CreateInstance(type); + if (size != 0) + psize.SetValue(test, size, new object[0]); + dest.SetValue(test, (UInt32)300000, new object[0]); + Console.Write("\t --> Immediate 32: "); + if (Verify()) + Console.Write("OK!"); + else + Console.Write("Wrong data emitted"); + Console.WriteLine(); + } + //memory 16 bits + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].testMem16)) + { + //no offset + Console.WriteLine("\t --> Mem16"); + Console.Write("\t\t --> no offset: "); + var test = Activator.CreateInstance(type); + if (size != 0) + psize.SetValue(test, size, new object[0]); + dest.SetValue(test, (UInt32)65, new object[0]); + dindirect.SetValue(test, true, new object[0]); + if (Verify()) + Console.Write("OK!"); + else + Console.Write("Wrong data emitted"); + Console.WriteLine(); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + test = Activator.CreateInstance(type); + if (size != 0) + psize.SetValue(test, size, new object[0]); + dest.SetValue(test, (UInt32)65, new object[0]); + dindirect.SetValue(test, true, new object[0]); + displacement.SetValue(test, 203, new object[0]); + if (Verify()) + Console.Write("OK!"); + else + Console.Write("Wrong data emitted"); + Console.WriteLine(); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + test = Activator.CreateInstance(type); + if (size != 0) + psize.SetValue(test, size, new object[0]); + dest.SetValue(test, (UInt32)65, new object[0]); + dindirect.SetValue(test, true, new object[0]); + displacement.SetValue(test, 70000, new object[0]); + if (Verify()) + Console.Write("OK!"); + else + Console.Write("Wrong data emitted"); + Console.WriteLine(); + } + + Console.ForegroundColor = ConsoleColor.Yellow; + if (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && opcodesException[type].testMem32)) + { + //no offset + Console.WriteLine("\t --> Mem32"); + Console.Write("\t\t --> no offset: "); + var test = Activator.CreateInstance(type); + if (size != 0) + psize.SetValue(test, size, new object[0]); + dest.SetValue(test, (UInt32)70000, new object[0]); + dindirect.SetValue(test, true, new object[0]); + //if (Verify()) + // Console.Write("OK!"); + //else + // Console.Write("Wrong data emitted"); + Console.WriteLine(); + //offset 16 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 16bit offset: "); + test = Activator.CreateInstance(type); + if (size != 0) + psize.SetValue(test, size, new object[0]); + dest.SetValue(test, (UInt32)70000, new object[0]); + dindirect.SetValue(test, true, new object[0]); + displacement.SetValue(test, (Int16)203, new object[0]); + if (Verify()) + Console.Write("OK!"); + else + Console.Write("Wrong data emitted"); + Console.WriteLine(); + //offset 32 + Console.ForegroundColor = ConsoleColor.Yellow; + Console.Write("\t\t --> 32bit offset"); + test = Activator.CreateInstance(type); + if (size != 0) + psize.SetValue(test, size, new object[0]); + dest.SetValue(test, (UInt32)70000, new object[0]); + dindirect.SetValue(test, true, new object[0]); + displacement.SetValue(test, (Int32)70000, new object[0]); + if (Verify()) + Console.Write("OK!"); + else + Console.Write("Wrong data emitted"); + Console.WriteLine(); + } + var testReg = Activator.CreateInstance(type); + Console.WriteLine("\tRegisters"); + foreach (Guid register in Registers.getRegisters()) + { + if (!type.Namespace.Contains("SSE") && (Registers.getXMMs().Contains(register))) + continue; + if (Registers.getCRs().Contains(register) && (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && (!opcodesException[type].testCR)))) + continue; + if (Registers.getRegisters().Contains(register) && (!opcodesException.ContainsKey(type) || (opcodesException.ContainsKey(type) && (!opcodesException[type].invalidDestRegisters.Contains(register))))) + continue; + if (size != 0) + psize.SetValue(testReg, size, new object[0]); + dreg.SetValue(testReg, register, new object[0]); + Console.Write("\t\t" + Registers.GetRegisterName(register) + ": "); + dest.SetValue(testReg, (UInt32)8, new object[0]); + if (Verify()) + Console.WriteLine("Ok!"); + else + Console.WriteLine("Wrong data emitted"); + Console.WriteLine(); + }*/ + } + + private static void TestInstructionWithDestinationAndSourceAndSize(Type type) + { + Console.ForegroundColor = ConsoleColor.Cyan; + Console.WriteLine("-->Size 8"); + TestInstructionWithDestinationAndSource(type, 8); + Console.ForegroundColor = ConsoleColor.Cyan; + Console.WriteLine("-->Size 16"); + TestInstructionWithDestinationAndSource(type, 16); + Console.ForegroundColor = ConsoleColor.Cyan; + Console.WriteLine("-->Size 32"); + TestInstructionWithDestinationAndSource(type, 32); + } + + private static void TestSimpleInstruction(Type type) + { + var test = Activator.CreateInstance(type); + if (Verify()) + Console.WriteLine("Ok!"); + else + Console.WriteLine("Wrong data emitted"); + } + + private static bool Verify() + { + + String tempPath = Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location), + "Output"); + var xNasmWriter = new StreamWriter(Path.Combine(tempPath, "TheOutput.asm"), false); + FileStream xNasmReader=null; + try{ + var xIndy86MS = new MemoryStream(); + x86Assembler.FlushText(xNasmWriter); + xNasmWriter.Close(); + ProcessStartInfo pinfo = new ProcessStartInfo(); + pinfo.Arguments = "TheOutput.asm" + " -o " + "TheOutput.bin"; + pinfo.WorkingDirectory=tempPath; + pinfo.FileName = nasmPath; + Process xProc = Process.Start(pinfo); + xProc.WaitForExit(); + xNasmReader = File.OpenRead(Path.Combine(tempPath, "TheOutput.bin")); + x86Assembler.FlushBinary(xIndy86MS,0x200000); + x86Assembler.Instructions.Clear(); + x86Assembler.DataMembers.Clear(); + xIndy86MS.Position = 0; + if (xNasmReader.Length != xIndy86MS.Length) + { + Console.ForegroundColor = ConsoleColor.Red; + xNasmReader.Close(); + x86Assembler.Instructions.Clear(); + x86Assembler.DataMembers.Clear(); + return false; + } + while (true) + { + var xVerData = xNasmReader.ReadByte(); + var xActualData = xIndy86MS.ReadByte(); + if (xVerData != xActualData) + { + Console.ForegroundColor = ConsoleColor.Red; + xNasmReader.Close(); + x86Assembler.Instructions.Clear(); + x86Assembler.DataMembers.Clear(); + return false; + } + if (xVerData == -1) + { + break; + } + } + xNasmReader.Close(); + x86Assembler.Instructions.Clear(); + x86Assembler.DataMembers.Clear(); + Console.ForegroundColor = ConsoleColor.Green; + return true; + } + catch (Exception e) + { + throw e; + } + finally + { + if(xNasmReader!=null) + xNasmReader.Close(); + if (xNasmWriter != null) + xNasmWriter.Close(); + } + } + private static void addSegmentRegisters(List list) + { + list.Add(Registers.CS); + list.Add(Registers.DS); + list.Add(Registers.ES); + list.Add(Registers.SS); + list.Add(Registers.FS); + list.Add(Registers.GS); + } + + private static void add8BitRegisters(List list) + { + list.Add(Registers.AL); + list.Add(Registers.CL); + list.Add(Registers.DL); + list.Add(Registers.BL); + list.Add(Registers.AH); + list.Add(Registers.CH); + list.Add(Registers.DH); + list.Add(Registers.BH); + } + + + private static void add16BitRegisters(List list) + { + addSegmentRegisters(list); + list.Add(Registers.AX); + list.Add(Registers.BP); + list.Add(Registers.BX); + list.Add(Registers.CX); + list.Add(Registers.DI); + list.Add(Registers.DX); + list.Add(Registers.SI); + list.Add(Registers.SP); + } + + private static void add32BitRegisters(List list) + { + list.Add(Registers.EAX); + list.Add(Registers.EBP); + list.Add(Registers.EBX); + list.Add(Registers.ECX); + list.Add(Registers.EDI); + list.Add(Registers.EDX); + list.Add(Registers.ESI); + list.Add(Registers.ESP); + } + private static void computeResult() + { + if (Verify()) + Console.Write("OK!"); + else + { + Console.Beep(); + Console.Write("Wrong data emitted"); + Console.ReadLine(); + } + Console.WriteLine(); + } + } +} diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/MoveTests.cs b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/MoveTests.cs similarity index 99% rename from source/Indy.IL2CPU.Tests/Assembler/X86/MoveTests.cs rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/MoveTests.cs index 7fd0e369e..b4a31d725 100644 --- a/source/Indy.IL2CPU.Tests/Assembler/X86/MoveTests.cs +++ b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/MoveTests.cs @@ -5,7 +5,7 @@ using System.Text; using NUnit.Framework; using Indy.IL2CPU.Assembler.X86; -namespace Indy.IL2CPU.Tests.Assembler.X86 { +namespace Indy.IL2CPU.Tests.AssemblerTests.X86 { [TestFixture] public class MoveTests: BaseTest { /* diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/PopTests.cs b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/PopTests.cs similarity index 95% rename from source/Indy.IL2CPU.Tests/Assembler/X86/PopTests.cs rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/PopTests.cs index 69e298395..47af8052c 100644 --- a/source/Indy.IL2CPU.Tests/Assembler/X86/PopTests.cs +++ b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/PopTests.cs @@ -5,7 +5,7 @@ using System.Text; using NUnit.Framework; using Indy.IL2CPU.Assembler.X86; -namespace Indy.IL2CPU.Tests.Assembler.X86 +namespace Indy.IL2CPU.Tests.AssemblerTests.X86 { [TestFixture] public class PopTests : BaseTest diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/PushTests.cs b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/PushTests.cs similarity index 95% rename from source/Indy.IL2CPU.Tests/Assembler/X86/PushTests.cs rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/PushTests.cs index a97b00491..3f2320de4 100644 --- a/source/Indy.IL2CPU.Tests/Assembler/X86/PushTests.cs +++ b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/PushTests.cs @@ -5,7 +5,7 @@ using System.Text; using NUnit.Framework; using Indy.IL2CPU.Assembler.X86; -namespace Indy.IL2CPU.Tests.Assembler.X86 +namespace Indy.IL2CPU.Tests.AssemblerTests.X86 { [TestFixture] public class PushTests : BaseTest diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/SubTests.cs b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/SubTests.cs similarity index 99% rename from source/Indy.IL2CPU.Tests/Assembler/X86/SubTests.cs rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/SubTests.cs index 5815e4584..bcb7d9260 100644 --- a/source/Indy.IL2CPU.Tests/Assembler/X86/SubTests.cs +++ b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/SubTests.cs @@ -5,7 +5,7 @@ using System.Text; using NUnit.Framework; using Indy.IL2CPU.Assembler.X86; -namespace Indy.IL2CPU.Tests.Assembler.X86 { +namespace Indy.IL2CPU.Tests.AssemblerTests.X86 { [TestFixture] public class SubTests : BaseTest { /* diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset16BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset16BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset16BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset16BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset16BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset16BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset16BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset16BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset32BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset32BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset32BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset32BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset32BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset32BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset32BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset32BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset8BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset8BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset8BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset8BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset8BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset8BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset8BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory16BitOffset8BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset16BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset16BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset16BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset16BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset16BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset16BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset16BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset16BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset32BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset32BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset32BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset32BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset32BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset32BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset32BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset32BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset8BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset8BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset8BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset8BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset8BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset8BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset8BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory32BitOffset8BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset16BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset16BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset16BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset16BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset16BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset16BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset16BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset16BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset32BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset32BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset32BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset32BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset32BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset32BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset32BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset32BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset8BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset8BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset8BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset8BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset8BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset8BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset8BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemory8BitOffset8BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToMemorySimple8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToMemorySimple8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/ImmediateToRegister8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/ImmediateToRegister8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory16BitOffset8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory16BitOffset8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory32BitOffset8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory32BitOffset8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToMemory8BitOffset8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToMemory8BitOffset8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/AddTests/RegisterToRegister8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/AddTests/RegisterToRegister8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/HaltTests/It.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/HaltTests/It.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/HaltTests/It.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/HaltTests/It.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/HaltTests/It.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/HaltTests/It.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/HaltTests/It.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/HaltTests/It.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset16BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset16BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset16BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset16BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset16BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset16BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset16BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset16BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset32BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset32BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset32BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset32BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset32BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset32BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset32BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset32BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset8BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset8BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset8BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset8BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset8BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset8BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset8BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory16BitOffset8BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset16BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset16BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset16BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset16BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset16BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset16BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset16BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset16BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset32BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset32BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset32BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset32BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset32BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset32BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset32BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset32BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset8BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset8BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset8BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset8BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset8BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset8BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset8BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory32BitOffset8BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset16BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset16BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset16BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset16BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset16BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset16BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset16BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset16BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset32BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset32BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset32BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset32BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset32BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset32BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset32BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset32BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset8BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset8BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset8BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset8BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset8BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset8BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset8BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemory8BitOffset8BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToMemorySimple8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToMemorySimple8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/ImmediateToRegister8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/ImmediateToRegister8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory16BitOffset8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory32BitOffset8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToMemory8BitOffset8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/MoveTests/RegisterToRegister8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/MoveTests/RegisterToRegister8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Memory16BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Memory16BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Memory16BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Memory16BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Memory16BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Memory16BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Memory16BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Memory16BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Memory32BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Memory32BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Memory32BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Memory32BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Memory32BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Memory32BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Memory32BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Memory32BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/MemorySimple32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/MemorySimple32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/MemorySimple32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/MemorySimple32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/MemorySimple32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/MemorySimple32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/MemorySimple32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/MemorySimple32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Registers32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Registers32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Registers32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Registers32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Registers32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Registers32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/Registers32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/Registers32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/SegmentRegisters.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/SegmentRegisters.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/SegmentRegisters.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/SegmentRegisters.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/SegmentRegisters.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/SegmentRegisters.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PopTests/SegmentRegisters.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PopTests/SegmentRegisters.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Immediate8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Immediate8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Memory16BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Memory16BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Memory16BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Memory16BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Memory16BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Memory16BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Memory16BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Memory16BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Memory32BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Memory32BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Memory32BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Memory32BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Memory32BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Memory32BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Memory32BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Memory32BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/MemorySimple32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/MemorySimple32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/MemorySimple32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/MemorySimple32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/MemorySimple32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/MemorySimple32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/MemorySimple32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/MemorySimple32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Registers32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Registers32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Registers32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Registers32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Registers32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Registers32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/PushTests/Registers32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/PushTests/Registers32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset16BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset16BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset16BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset16BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset16BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset16BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset16BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset16BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset32BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset32BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset32BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset32BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset32BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset32BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset32BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset32BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset8BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset8BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset8BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset8BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset8BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset8BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset8BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory16BitOffset8BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset16BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset16BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset16BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset16BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset16BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset16BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset16BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset16BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset32BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset32BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset32BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset32BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset32BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset32BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset32BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset32BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset8BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset8BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset8BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset8BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset8BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset8BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset8BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory32BitOffset8BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset16BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset16BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset16BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset16BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset16BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset16BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset16BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset16BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset32BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset32BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset32BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset32BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset32BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset32BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset32BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset32BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset8BitData.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset8BitData.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset8BitData.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset8BitData.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset8BitData.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset8BitData.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset8BitData.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemory8BitOffset8BitData.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToMemorySimple8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToMemorySimple8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/ImmediateToRegister8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/ImmediateToRegister8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory16BitOffset8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory16BitOffset8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory32BitOffset8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory32BitOffset8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToMemory8BitOffset8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToMemory8BitOffset8.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister16.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister16.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister16.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister16.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister16.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister16.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister16.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister16.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister32.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister32.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister32.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister32.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister32.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister32.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister32.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister32.bin diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister8.asm b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister8.asm similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister8.asm rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister8.asm diff --git a/source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister8.bin b/source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister8.bin similarity index 100% rename from source/Indy.IL2CPU.Tests/Assembler/X86/VerificationData/SubTests/RegisterToRegister8.bin rename to source/Indy.IL2CPU.Tests/AssemblerTests/X86/VerificationData/SubTests/RegisterToRegister8.bin diff --git a/source/Indy.IL2CPU.Tests/Indy.IL2CPU.Tests.csproj b/source/Indy.IL2CPU.Tests/Indy.IL2CPU.Tests.csproj index ba8b20522..7edde599e 100644 --- a/source/Indy.IL2CPU.Tests/Indy.IL2CPU.Tests.csproj +++ b/source/Indy.IL2CPU.Tests/Indy.IL2CPU.Tests.csproj @@ -6,7 +6,7 @@ 9.0.30729 2.0 {014A572A-70CA-4BDE-80AF-A4F6F92DB1E3} - Library + Exe Properties Indy.IL2CPU.Tests Indy.IL2CPU.Tests @@ -16,6 +16,8 @@ SAK SAK SAK + + true @@ -47,13 +49,14 @@ - - - - - - - + + + + + + + + @@ -63,258 +66,196 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +