@@ -0,0 +1,510 @@
using ARMeilleure.State ;
using NUnit.Framework ;
using System ;
namespace Ryujinx.Tests.Cpu
{
[Category("T32Alu")]
public sealed class CpuTestT32Alu : CpuTest32
{
[Test]
public void TestT32AluRsImm ( [ ValueSource ( nameof ( RsImmTestCases ) ) ] PrecomputedThumbTestCase test )
{
RunPrecomputedTestCase ( test ) ;
}
public static readonly PrecomputedThumbTestCase [ ] RsImmTestCases =
{
// TST (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea18 , 0x4f03 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x15a99211 , 0x08a56ba3 , 0x3c588032 , 0xdac302ae , 0x6b7d5b2d , 0x4fe1d8dd , 0x04a574ba , 0x7873779d , 0x17a565d1 , 0x63a4bf95 , 0xd62594fb , 0x2b9aa84b , 0x20448ccd , 0x70b2197e , 0x00000000 , 0x700001f0 } ,
FinalRegs = new uint [ ] { 0x15a99211 , 0x08a56ba3 , 0x3c588032 , 0xdac302ae , 0x6b7d5b2d , 0x4fe1d8dd , 0x04a574ba , 0x7873779d , 0x17a565d1 , 0x63a4bf95 , 0xd62594fb , 0x2b9aa84b , 0x20448ccd , 0x70b2197e , 0x00000000 , 0x300001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea11 , 0x5f67 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xc9754393 , 0xec511f2a , 0xc365b8f1 , 0xa024565a , 0x089ae8e2 , 0xf0c91f23 , 0x290f83f4 , 0x48f2f445 , 0xd3288f2b , 0x7d7b2e44 , 0xe80dd37e , 0xb000697f , 0x95be1027 , 0x74702206 , 0x00000000 , 0x200001f0 } ,
FinalRegs = new uint [ ] { 0xc9754393 , 0xec511f2a , 0xc365b8f1 , 0xa024565a , 0x089ae8e2 , 0xf0c91f23 , 0x290f83f4 , 0x48f2f445 , 0xd3288f2b , 0x7d7b2e44 , 0xe80dd37e , 0xb000697f , 0x95be1027 , 0x74702206 , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1a , 0x2fc9 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xe9c49eb7 , 0x2ca13a97 , 0x3fded5a8 , 0x30e203e9 , 0x811a9ee5 , 0x504f95f2 , 0x746794b4 , 0xfe92b6d6 , 0x7608d3c4 , 0xf3c5ea36 , 0x6290c8f2 , 0x45a4a521 , 0x359a615c , 0x25674915 , 0x00000000 , 0xf00001f0 } ,
FinalRegs = new uint [ ] { 0xe9c49eb7 , 0x2ca13a97 , 0x3fded5a8 , 0x30e203e9 , 0x811a9ee5 , 0x504f95f2 , 0x746794b4 , 0xfe92b6d6 , 0x7608d3c4 , 0xf3c5ea36 , 0x6290c8f2 , 0x45a4a521 , 0x359a615c , 0x25674915 , 0x00000000 , 0x100001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea15 , 0x0f85 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x3130c8d7 , 0x5917d350 , 0xdf48eedb , 0x23025883 , 0x076175bb , 0x5402cc6c , 0x54a95806 , 0x7f59c691 , 0x9c3eeebf , 0x4b52b4d1 , 0xb4eb9626 , 0x21fa7996 , 0x0ff0a95a , 0x6beb27fd , 0x00000000 , 0x600001f0 } ,
FinalRegs = new uint [ ] { 0x3130c8d7 , 0x5917d350 , 0xdf48eedb , 0x23025883 , 0x076175bb , 0x5402cc6c , 0x54a95806 , 0x7f59c691 , 0x9c3eeebf , 0x4b52b4d1 , 0xb4eb9626 , 0x21fa7996 , 0x0ff0a95a , 0x6beb27fd , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1b , 0x6feb , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x39889074 , 0xbea8978e , 0x0331cc7a , 0x448e3b19 , 0x33285e9e , 0xdf295408 , 0x8444676e , 0xe6998904 , 0x819e4da4 , 0xb099272c , 0x101385a7 , 0x71728a87 , 0x76f95b3a , 0x8d5012e4 , 0x00000000 , 0xc00001f0 } ,
FinalRegs = new uint [ ] { 0x39889074 , 0xbea8978e , 0x0331cc7a , 0x448e3b19 , 0x33285e9e , 0xdf295408 , 0x8444676e , 0xe6998904 , 0x819e4da4 , 0xb099272c , 0x101385a7 , 0x71728a87 , 0x76f95b3a , 0x8d5012e4 , 0x00000000 , 0x000001d0 } ,
} ,
// AND (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea18 , 0x1f52 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xcbe174f1 , 0x44be318c , 0x4a8a1a70 , 0x1f3c8883 , 0x33b316ee , 0x0591a3c5 , 0x0ceff4a5 , 0xd74988e2 , 0xa5ef1873 , 0xbd35a940 , 0x52a9f4d8 , 0xf8662781 , 0xda558ea8 , 0x4c7d50bc , 0x00000000 , 0x400001f0 } ,
FinalRegs = new uint [ ] { 0xcbe174f1 , 0x44be318c , 0x4a8a1a70 , 0x1f3c8883 , 0x33b316ee , 0x0591a3c5 , 0x0ceff4a5 , 0xd74988e2 , 0xa5ef1873 , 0xbd35a940 , 0x52a9f4d8 , 0xf8662781 , 0xda558ea8 , 0x4c7d50bc , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea19 , 0x4f6b , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x97b9423c , 0x1c25286b , 0x50f84fef , 0xd917c24e , 0x2a5116af , 0xcc65ba10 , 0xf5e9dc41 , 0xf9f61d10 , 0x9876cfe5 , 0xd0fdd4bc , 0x95913be0 , 0x844c820f , 0xfdaf9519 , 0xf3fb09b6 , 0x00000000 , 0xb00001f0 } ,
FinalRegs = new uint [ ] { 0x97b9423c , 0x1c25286b , 0x50f84fef , 0xd917c24e , 0x2a5116af , 0xcc65ba10 , 0xf5e9dc41 , 0xf9f61d10 , 0x9876cfe5 , 0xd0fdd4bc , 0x95913be0 , 0x844c820f , 0xfdaf9519 , 0xf3fb09b6 , 0x00000000 , 0x900001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1b , 0x3f52 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x1900757b , 0x6914c62d , 0x5eaa28ed , 0xd927c1f7 , 0xfd2052ac , 0x146bcb99 , 0x604f9b1d , 0xb395bf46 , 0x3723ba84 , 0xb909d3ec , 0x3db4365e , 0x42df68cd , 0x5fdc10cb , 0x4955b8be , 0x00000000 , 0xf00001f0 } ,
FinalRegs = new uint [ ] { 0x1900757b , 0x6914c62d , 0x5eaa28ed , 0xd927c1f7 , 0xfd2052ac , 0x146bcb99 , 0x604f9b1d , 0xb395bf46 , 0x3723ba84 , 0xb909d3ec , 0x3db4365e , 0x42df68cd , 0x5fdc10cb , 0x4955b8be , 0x00000000 , 0x100001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1a , 0x0f17 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x6134093f , 0x115a1456 , 0xa7877f6e , 0x2070e9eb , 0x9ddf4a73 , 0x14266482 , 0x7f98e557 , 0xbaa854e0 , 0xa37f89a6 , 0x641325de , 0xae2dc79b , 0x5b3f2af2 , 0x476476d2 , 0xb99cc9fd , 0x00000000 , 0xb00001f0 } ,
FinalRegs = new uint [ ] { 0x6134093f , 0x115a1456 , 0xa7877f6e , 0x2070e9eb , 0x9ddf4a73 , 0x14266482 , 0x7f98e557 , 0xbaa854e0 , 0xa37f89a6 , 0x641325de , 0xae2dc79b , 0x5b3f2af2 , 0x476476d2 , 0xb99cc9fd , 0x00000000 , 0x700001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1b , 0x5f17 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xbaa2bc1a , 0xee3e86d4 , 0x3179d65a , 0x8a63cf55 , 0x48ea14f4 , 0xf85c5d5b , 0x6af50974 , 0xf3ded3e9 , 0xdab4d6e6 , 0x930c07eb , 0x8084b2dd , 0xf6518695 , 0x4a3e0f7a , 0x581bd56a , 0x00000000 , 0x300001f0 } ,
FinalRegs = new uint [ ] { 0xbaa2bc1a , 0xee3e86d4 , 0x3179d65a , 0x8a63cf55 , 0x48ea14f4 , 0xf85c5d5b , 0x6af50974 , 0xf3ded3e9 , 0xdab4d6e6 , 0x930c07eb , 0x8084b2dd , 0xf6518695 , 0x4a3e0f7a , 0x581bd56a , 0x00000000 , 0x300001d0 } ,
} ,
// BIC (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1c , 0x0fbc , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xfc7b7a8b , 0xc1186d54 , 0x0a83eda1 , 0x88fed37c , 0x5438e8ea , 0xe0af3690 , 0x6dba7b9f , 0xa7395bd6 , 0xd43af274 , 0xbb46f4c2 , 0xb65dbcd5 , 0xa6bd08b0 , 0xb55971c7 , 0x2244572e , 0x00000000 , 0x700001f0 } ,
FinalRegs = new uint [ ] { 0xfc7b7a8b , 0xc1186d54 , 0x0a83eda1 , 0x88fed37c , 0x5438e8ea , 0xe0af3690 , 0x6dba7b9f , 0xa7395bd6 , 0xd43af274 , 0xbb46f4c2 , 0xb65dbcd5 , 0xa6bd08b0 , 0xb55971c7 , 0x2244572e , 0x00000000 , 0xb00001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1b , 0x5fe7 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x75f617c8 , 0x12ac7ccd , 0x85e6d881 , 0x30967bdd , 0xdf66b387 , 0xb3d59ccf , 0xe3c824b4 , 0xada7a9e4 , 0x225da86f , 0x18e008ac , 0x51854224 , 0xf3b43823 , 0xde37f151 , 0x6764b34a , 0x00000000 , 0xe00001f0 } ,
FinalRegs = new uint [ ] { 0x75f617c8 , 0x12ac7ccd , 0x85e6d881 , 0x30967bdd , 0xdf66b387 , 0xb3d59ccf , 0xe3c824b4 , 0xada7a9e4 , 0x225da86f , 0x18e008ac , 0x51854224 , 0xf3b43823 , 0xde37f151 , 0x6764b34a , 0x00000000 , 0x800001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x1fc3 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xde174255 , 0x3968e364 , 0xf1efd73b , 0x9a159a4e , 0x2b906c3e , 0xf1dfb847 , 0x34e3e8f0 , 0x39c33745 , 0xc368a812 , 0x8f3fe175 , 0xe3da055f , 0x7737a5d5 , 0x7464344a , 0xdb3ac192 , 0x00000000 , 0x000001f0 } ,
FinalRegs = new uint [ ] { 0xde174255 , 0x3968e364 , 0xf1efd73b , 0x9a159a4e , 0x2b906c3e , 0xf1dfb847 , 0x34e3e8f0 , 0x39c33745 , 0xc368a812 , 0x8f3fe175 , 0xe3da055f , 0x7737a5d5 , 0x7464344a , 0xdb3ac192 , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea18 , 0x6f66 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x368ef4f3 , 0x18583461 , 0x94f6e104 , 0x21e1c1b0 , 0x009c85df , 0xe6bddfb2 , 0x118e9dad , 0xcdf92eb5 , 0xae18b093 , 0xe24a54ab , 0x55d1a1a0 , 0x0eed1bad , 0x8b6bce47 , 0x20b1fdc2 , 0x00000000 , 0xf00001f0 } ,
FinalRegs = new uint [ ] { 0x368ef4f3 , 0x18583461 , 0x94f6e104 , 0x21e1c1b0 , 0x009c85df , 0xe6bddfb2 , 0x118e9dad , 0xcdf92eb5 , 0xae18b093 , 0xe24a54ab , 0x55d1a1a0 , 0x0eed1bad , 0x8b6bce47 , 0x20b1fdc2 , 0x00000000 , 0x700001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1b , 0x3fc6 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x6f913e40 , 0xd1814933 , 0x181eb63c , 0x287a5050 , 0xe5925dd9 , 0x712ee261 , 0xcca2e51d , 0x0e88a1ba , 0xa4c8d4c3 , 0x26887e3e , 0x83b8de36 , 0xc5a5d439 , 0x8d2ace7a , 0x9df36292 , 0x00000000 , 0xe00001f0 } ,
FinalRegs = new uint [ ] { 0x6f913e40 , 0xd1814933 , 0x181eb63c , 0x287a5050 , 0xe5925dd9 , 0x712ee261 , 0xcca2e51d , 0x0e88a1ba , 0xa4c8d4c3 , 0x26887e3e , 0x83b8de36 , 0xc5a5d439 , 0x8d2ace7a , 0x9df36292 , 0x00000000 , 0x200001d0 } ,
} ,
// MOV (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea16 , 0x2fdd , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x89fcb953 , 0xafbf8db2 , 0xad96137f , 0x7901360c , 0x513b561b , 0x2345a005 , 0x0ece889b , 0xc8bb918f , 0x270458ce , 0x73bea675 , 0xab735592 , 0xf68e00e5 , 0x88bf2dc1 , 0x98601074 , 0x00000000 , 0xe00001f0 } ,
FinalRegs = new uint [ ] { 0x89fcb953 , 0xafbf8db2 , 0xad96137f , 0x7901360c , 0x513b561b , 0x2345a005 , 0x0ece889b , 0xc8bb918f , 0x270458ce , 0x73bea675 , 0xab735592 , 0xf68e00e5 , 0x88bf2dc1 , 0x98601074 , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea19 , 0x6fd6 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x35f5eea1 , 0x75fe4252 , 0x71165923 , 0x13ad82d2 , 0x01f69a1c , 0x33ff5351 , 0x869c335f , 0x70ce9266 , 0xf58868ad , 0x4f58e982 , 0x89f7df88 , 0xd0ba8d45 , 0xf45e6e03 , 0x7f653972 , 0x00000000 , 0x800001f0 } ,
FinalRegs = new uint [ ] { 0x35f5eea1 , 0x75fe4252 , 0x71165923 , 0x13ad82d2 , 0x01f69a1c , 0x33ff5351 , 0x869c335f , 0x70ce9266 , 0xf58868ad , 0x4f58e982 , 0x89f7df88 , 0xd0ba8d45 , 0xf45e6e03 , 0x7f653972 , 0x00000000 , 0x600001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x6f5d , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x1e83719a , 0x1b6405c5 , 0x25d9d1d6 , 0x3e5fc7f3 , 0xd157d610 , 0x271b5c46 , 0xb65c2838 , 0xe4590643 , 0x2f2623d7 , 0xf1155f93 , 0xfa676221 , 0x6fac2a1d , 0xc1fa1d8d , 0x8cfa89e1 , 0x00000000 , 0xf00001f0 } ,
FinalRegs = new uint [ ] { 0x1e83719a , 0x1b6405c5 , 0x25d9d1d6 , 0x3e5fc7f3 , 0xd157d610 , 0x271b5c46 , 0xb65c2838 , 0xe4590643 , 0x2f2623d7 , 0xf1155f93 , 0xfa676221 , 0x6fac2a1d , 0xc1fa1d8d , 0x8cfa89e1 , 0x00000000 , 0x500001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1c , 0x2fa2 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x431278f1 , 0xd3fffe52 , 0xbfb4d877 , 0x10af0eeb , 0xd375b791 , 0xbd19aa81 , 0x45eb7ba3 , 0x30e47d42 , 0xc274e032 , 0x6da10d33 , 0xfeda1ba4 , 0x3dc6205e , 0xc275197e , 0x6c8b86d1 , 0x00000000 , 0xb00001f0 } ,
FinalRegs = new uint [ ] { 0x431278f1 , 0xd3fffe52 , 0xbfb4d877 , 0x10af0eeb , 0xd375b791 , 0xbd19aa81 , 0x45eb7ba3 , 0x30e47d42 , 0xc274e032 , 0x6da10d33 , 0xfeda1ba4 , 0x3dc6205e , 0xc275197e , 0x6c8b86d1 , 0x00000000 , 0x900001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1a , 0x7f7b , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x31f0830d , 0x69dda3f6 , 0x983fc927 , 0x0407652a , 0x32ceab65 , 0xe76a77fd , 0x8a7dd0a6 , 0x4892a02f , 0xeab00585 , 0xa78bf230 , 0x896dd5a9 , 0xe3c44398 , 0xc2d743d0 , 0x42b03803 , 0x00000000 , 0xf00001f0 } ,
FinalRegs = new uint [ ] { 0x31f0830d , 0x69dda3f6 , 0x983fc927 , 0x0407652a , 0x32ceab65 , 0xe76a77fd , 0x8a7dd0a6 , 0x4892a02f , 0xeab00585 , 0xa78bf230 , 0x896dd5a9 , 0xe3c44398 , 0xc2d743d0 , 0x42b03803 , 0x00000000 , 0x100001d0 } ,
} ,
// ORR (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea10 , 0x5f72 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x5834d41e , 0x7092ed2e , 0x8994242e , 0x7fac6d96 , 0x4d896829 , 0x1a578dec , 0x98649fd8 , 0x3b713450 , 0xca430792 , 0xd68d5176 , 0xfe0b5c4f , 0xd9caf416 , 0xb0e9d5fa , 0x62c57422 , 0x00000000 , 0x800001f0 } ,
FinalRegs = new uint [ ] { 0x5834d41e , 0x7092ed2e , 0x8994242e , 0x7fac6d96 , 0x4d896829 , 0x1a578dec , 0x98649fd8 , 0x3b713450 , 0xca430792 , 0xd68d5176 , 0xfe0b5c4f , 0xd9caf416 , 0xb0e9d5fa , 0x62c57422 , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x0fb4 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x6842aa84 , 0x0711ecb6 , 0xebae7374 , 0x6ea58edd , 0xa6d2837c , 0xbcc1e0d1 , 0xe52c9d6c , 0x7bb5fa1c , 0xa7cd6f8a , 0x4558ddb7 , 0x7adb449c , 0x95986dd8 , 0x7432562c , 0x80d2595c , 0x00000000 , 0x400001f0 } ,
FinalRegs = new uint [ ] { 0x6842aa84 , 0x0711ecb6 , 0xebae7374 , 0x6ea58edd , 0xa6d2837c , 0xbcc1e0d1 , 0xe52c9d6c , 0x7bb5fa1c , 0xa7cd6f8a , 0x4558ddb7 , 0x7adb449c , 0x95986dd8 , 0x7432562c , 0x80d2595c , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x2f78 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x6be94e4c , 0x0569589b , 0xc7e6e127 , 0xe5537aea , 0x323e7a85 , 0x895e9a94 , 0x2341f9b6 , 0x9632a18a , 0xa790766f , 0x53533cf3 , 0x83cec3aa , 0xa1d042af , 0xabff7e58 , 0x614f9bc0 , 0x00000000 , 0x400001f0 } ,
FinalRegs = new uint [ ] { 0x6be94e4c , 0x0569589b , 0xc7e6e127 , 0xe5537aea , 0x323e7a85 , 0x895e9a94 , 0x2341f9b6 , 0x9632a18a , 0xa790766f , 0x53533cf3 , 0x83cec3aa , 0xa1d042af , 0xabff7e58 , 0x614f9bc0 , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea12 , 0x4fbc , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x2e43ac9a , 0xa6a8d4b6 , 0xf5853279 , 0xf152f284 , 0xce9656e5 , 0x07642918 , 0xd6e25d4a , 0xdebc7fa6 , 0x8c3af5e0 , 0x3d00cd4c , 0x7e744bb4 , 0x2a4b8015 , 0x602ea481 , 0xdef7571b , 0x00000000 , 0x300001f0 } ,
FinalRegs = new uint [ ] { 0x2e43ac9a , 0xa6a8d4b6 , 0xf5853279 , 0xf152f284 , 0xce9656e5 , 0x07642918 , 0xd6e25d4a , 0xdebc7fa6 , 0x8c3af5e0 , 0x3d00cd4c , 0x7e744bb4 , 0x2a4b8015 , 0x602ea481 , 0xdef7571b , 0x00000000 , 0xb00001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x7f4c , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x67be4dae , 0xff0f74a8 , 0xd769f9e1 , 0xb4a98e0a , 0x2988a7dc , 0xb5726464 , 0xb7b3fb27 , 0x077e539c , 0x9c817cd4 , 0xa8cc3981 , 0xbe5a7591 , 0xc753850a , 0xb8c612a7 , 0x6d913c9b , 0x00000000 , 0x900001f0 } ,
FinalRegs = new uint [ ] { 0x67be4dae , 0xff0f74a8 , 0xd769f9e1 , 0xb4a98e0a , 0x2988a7dc , 0xb5726464 , 0xb7b3fb27 , 0x077e539c , 0x9c817cd4 , 0xa8cc3981 , 0xbe5a7591 , 0xc753850a , 0xb8c612a7 , 0x6d913c9b , 0x00000000 , 0x100001d0 } ,
} ,
// MVN (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea15 , 0x0ffb , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x4a0a7b4c , 0x4e58d907 , 0x386b8207 , 0xcd71b0c4 , 0x86dcf525 , 0x8ae9dba4 , 0xf5d6a418 , 0xfac79f2e , 0x44cf918b , 0x5d38193b , 0xc17adeaf , 0xa4ad8a86 , 0x69527ece , 0x69b75c61 , 0x00000000 , 0x900001f0 } ,
FinalRegs = new uint [ ] { 0x4a0a7b4c , 0x4e58d907 , 0x386b8207 , 0xcd71b0c4 , 0x86dcf525 , 0x8ae9dba4 , 0xf5d6a418 , 0xfac79f2e , 0x44cf918b , 0x5d38193b , 0xc17adeaf , 0xa4ad8a86 , 0x69527ece , 0x69b75c61 , 0x00000000 , 0xb00001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1a , 0x4f01 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xce60a6df , 0xb1127c3f , 0x410d7b4a , 0xd9cfc917 , 0xd1b2fc52 , 0x8be1e03c , 0xde9b256d , 0xff989abd , 0x07e3c46a , 0x780e7d7c , 0xd807ce82 , 0x5e5c8f2b , 0x09232f6d , 0x00746338 , 0x00000000 , 0x500001f0 } ,
FinalRegs = new uint [ ] { 0xce60a6df , 0xb1127c3f , 0x410d7b4a , 0xd9cfc917 , 0xd1b2fc52 , 0x8be1e03c , 0xde9b256d , 0xff989abd , 0x07e3c46a , 0x780e7d7c , 0xd807ce82 , 0x5e5c8f2b , 0x09232f6d , 0x00746338 , 0x00000000 , 0x100001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea18 , 0x2f5e , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x18b1240a , 0xa896f734 , 0xcd4a40bc , 0x28346a77 , 0xbdf09586 , 0x3c74ed70 , 0x3e255ea3 , 0xe55679b4 , 0xcc602510 , 0x9cd73bfb , 0xf21a6ddb , 0x263a4338 , 0x06beb332 , 0x0790ac93 , 0x00000000 , 0xa00001f0 } ,
FinalRegs = new uint [ ] { 0x18b1240a , 0xa896f734 , 0xcd4a40bc , 0x28346a77 , 0xbdf09586 , 0x3c74ed70 , 0x3e255ea3 , 0xe55679b4 , 0xcc602510 , 0x9cd73bfb , 0xf21a6ddb , 0x263a4338 , 0x06beb332 , 0x0790ac93 , 0x00000000 , 0x400001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1b , 0x7f41 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x0c25f69d , 0xc32dc28a , 0xf5e2fe71 , 0xe46af209 , 0x2d1b6ac8 , 0xccac564c , 0x567cc561 , 0x63707d28 , 0xeae934c8 , 0xab78e6f6 , 0x2d78d86d , 0x76471cdc , 0x9b909f76 , 0xa2cc099d , 0x00000000 , 0x200001f0 } ,
FinalRegs = new uint [ ] { 0x0c25f69d , 0xc32dc28a , 0xf5e2fe71 , 0xe46af209 , 0x2d1b6ac8 , 0xccac564c , 0x567cc561 , 0x63707d28 , 0xeae934c8 , 0xab78e6f6 , 0x2d78d86d , 0x76471cdc , 0x9b909f76 , 0xa2cc099d , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea19 , 0x6ff6 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x6e79c449 , 0xe9449bf7 , 0x51f8fcb8 , 0x138e0b80 , 0x715312f2 , 0x601ea894 , 0xb01f9369 , 0x02738c29 , 0xee35545f , 0xb61ae4a2 , 0xba412f08 , 0x1d349e02 , 0x56a0dfc0 , 0x68cd5bfe , 0x00000000 , 0x500001f0 } ,
FinalRegs = new uint [ ] { 0x6e79c449 , 0xe9449bf7 , 0x51f8fcb8 , 0x138e0b80 , 0x715312f2 , 0x601ea894 , 0xb01f9369 , 0x02738c29 , 0xee35545f , 0xb61ae4a2 , 0xba412f08 , 0x1d349e02 , 0x56a0dfc0 , 0x68cd5bfe , 0x00000000 , 0x100001d0 } ,
} ,
// ORN (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1b , 0x3fd0 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x77034e34 , 0xd0727e58 , 0x4748dbf2 , 0x2becd551 , 0x0a650329 , 0x005548fa , 0xcfb963c2 , 0x9561c965 , 0xf157c850 , 0x180a1a6c , 0x0252e103 , 0x29d0f25a , 0xbd9bbecd , 0xbfd1347c , 0x00000000 , 0x100001f0 } ,
FinalRegs = new uint [ ] { 0x77034e34 , 0xd0727e58 , 0x4748dbf2 , 0x2becd551 , 0x0a650329 , 0x005548fa , 0xcfb963c2 , 0x9561c965 , 0xf157c850 , 0x180a1a6c , 0x0252e103 , 0x29d0f25a , 0xbd9bbecd , 0xbfd1347c , 0x00000000 , 0x300001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea16 , 0x4f72 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x71cc7ddf , 0x67d4ce81 , 0x60b04501 , 0xcc90b805 , 0xc5f34081 , 0x5e83e9f7 , 0xb5a78fa9 , 0xc2497a71 , 0xb20cdf14 , 0x4de9f773 , 0xf79525ec , 0x26534abd , 0xcd7b59d1 , 0x5cfc9554 , 0x00000000 , 0x200001f0 } ,
FinalRegs = new uint [ ] { 0x71cc7ddf , 0x67d4ce81 , 0x60b04501 , 0xcc90b805 , 0xc5f34081 , 0x5e83e9f7 , 0xb5a78fa9 , 0xc2497a71 , 0xb20cdf14 , 0x4de9f773 , 0xf79525ec , 0x26534abd , 0xcd7b59d1 , 0x5cfc9554 , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1d , 0x4fa7 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x73259d94 , 0xc85643db , 0xbf238eb1 , 0x51648d99 , 0xce2971c9 , 0xf9e0e440 , 0x90de33c9 , 0xcf8ac8e9 , 0xda964c21 , 0x539eb057 , 0x3a681b87 , 0x11993d47 , 0x05a1358f , 0xa8282529 , 0x00000000 , 0xf00001f0 } ,
FinalRegs = new uint [ ] { 0x73259d94 , 0xc85643db , 0xbf238eb1 , 0x51648d99 , 0xce2971c9 , 0xf9e0e440 , 0x90de33c9 , 0xcf8ac8e9 , 0xda964c21 , 0x539eb057 , 0x3a681b87 , 0x11993d47 , 0x05a1358f , 0xa8282529 , 0x00000000 , 0xb00001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea12 , 0x3fdb , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xd274d46b , 0x8937836f , 0x33b78178 , 0xc250b807 , 0xd3323d2f , 0x82e03ba2 , 0xf93bf1a6 , 0xb31e0c74 , 0xc9238070 , 0x957331d1 , 0xfaadd1ee , 0x073d40fb , 0x05b3e8b4 , 0x93e5233b , 0x00000000 , 0x600001f0 } ,
FinalRegs = new uint [ ] { 0xd274d46b , 0x8937836f , 0x33b78178 , 0xc250b807 , 0xd3323d2f , 0x82e03ba2 , 0xf93bf1a6 , 0xb31e0c74 , 0xc9238070 , 0x957331d1 , 0xfaadd1ee , 0x073d40fb , 0x05b3e8b4 , 0x93e5233b , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea15 , 0x5f92 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x24755d61 , 0xb65b742d , 0xb46476cf , 0x771a9fcd , 0x465b367f , 0x3daa2a47 , 0x6984eeb8 , 0x238e3187 , 0xa9717261 , 0x4592be1d , 0x46d19147 , 0x6a6e4dc8 , 0x4ddd896f , 0x2f899425 , 0x00000000 , 0xb00001f0 } ,
FinalRegs = new uint [ ] { 0x24755d61 , 0xb65b742d , 0xb46476cf , 0x771a9fcd , 0x465b367f , 0x3daa2a47 , 0x6984eeb8 , 0x238e3187 , 0xa9717261 , 0x4592be1d , 0x46d19147 , 0x6a6e4dc8 , 0x4ddd896f , 0x2f899425 , 0x00000000 , 0x300001d0 } ,
} ,
// TEQ (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1a , 0x2f54 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x36675cac , 0xd9259257 , 0x0b8ab9ad , 0xbfef324e , 0xf9623cd6 , 0xfc1919ff , 0x616b25f5 , 0x2d26a3d3 , 0x61eb12c8 , 0xbb8d48f0 , 0xbfb9c232 , 0x10383506 , 0x31d10885 , 0xf29cb615 , 0x00000000 , 0x500001f0 } ,
FinalRegs = new uint [ ] { 0x36675cac , 0xd9259257 , 0x0b8ab9ad , 0xbfef324e , 0xf9623cd6 , 0xfc1919ff , 0x616b25f5 , 0x2d26a3d3 , 0x61eb12c8 , 0xbb8d48f0 , 0xbfb9c232 , 0x10383506 , 0x31d10885 , 0xf29cb615 , 0x00000000 , 0x100001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea17 , 0x1f43 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xf7dce25d , 0xbe296478 , 0xe1aee674 , 0x0414c126 , 0xa258cf11 , 0x5347cc5f , 0x6f8ed2c9 , 0xed554dbe , 0xd3073560 , 0x627dbd64 , 0xca8bb3fc , 0x9590e3a9 , 0xe4bea6bc , 0x557934a6 , 0x00000000 , 0xf00001f0 } ,
FinalRegs = new uint [ ] { 0xf7dce25d , 0xbe296478 , 0xe1aee674 , 0x0414c126 , 0xa258cf11 , 0x5347cc5f , 0x6f8ed2c9 , 0xed554dbe , 0xd3073560 , 0x627dbd64 , 0xca8bb3fc , 0x9590e3a9 , 0xe4bea6bc , 0x557934a6 , 0x00000000 , 0x900001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea13 , 0x1f5b , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x84ad5535 , 0xc1f15e65 , 0x5ea0078b , 0x79df457d , 0x1c735fe5 , 0x06dcfd95 , 0x6db96dae , 0x572f572d , 0xac88a919 , 0x56d850a6 , 0xd5ce3a30 , 0x2be992e8 , 0x497a47ce , 0x38a74019 , 0x00000000 , 0xe00001f0 } ,
FinalRegs = new uint [ ] { 0x84ad5535 , 0xc1f15e65 , 0x5ea0078b , 0x79df457d , 0x1c735fe5 , 0x06dcfd95 , 0x6db96dae , 0x572f572d , 0xac88a919 , 0x56d850a6 , 0xd5ce3a30 , 0x2be992e8 , 0x497a47ce , 0x38a74019 , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea16 , 0x3ff3 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xa85ea277 , 0x6028643d , 0xa5a85f15 , 0x47f0f2a5 , 0x9b6eebdb , 0x9f064bc7 , 0xab59939f , 0x1a278260 , 0xb9f91cfa , 0xf913c49c , 0x2b5c0052 , 0x1bf2d6dc , 0x81da80a4 , 0xced90006 , 0x00000000 , 0x000001f0 } ,
FinalRegs = new uint [ ] { 0xa85ea277 , 0x6028643d , 0xa5a85f15 , 0x47f0f2a5 , 0x9b6eebdb , 0x9f064bc7 , 0xab59939f , 0x1a278260 , 0xb9f91cfa , 0xf913c49c , 0x2b5c0052 , 0x1bf2d6dc , 0x81da80a4 , 0xced90006 , 0x00000000 , 0xa00001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x3f09 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xdf494128 , 0xbc975c16 , 0x62c66823 , 0x95be3737 , 0xa07e8778 , 0x6ce80cc7 , 0xfea03385 , 0x4c5bf35a , 0x5cd0bcdf , 0xc47451ab , 0x3849af70 , 0x1329c14a , 0xb1f96f79 , 0x321eaf12 , 0x00000000 , 0x700001f0 } ,
FinalRegs = new uint [ ] { 0xdf494128 , 0xbc975c16 , 0x62c66823 , 0x95be3737 , 0xa07e8778 , 0x6ce80cc7 , 0xfea03385 , 0x4c5bf35a , 0x5cd0bcdf , 0xc47451ab , 0x3849af70 , 0x1329c14a , 0xb1f96f79 , 0x321eaf12 , 0x00000000 , 0x300001d0 } ,
} ,
// EOR (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea17 , 0x6fc0 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x9c803ce5 , 0x38e325f9 , 0x4d32aea8 , 0x0120f77b , 0x8e34b507 , 0xee41aabf , 0x7e6d8a0c , 0x761a3f21 , 0x99b57f1d , 0x32a4bbf3 , 0x9902c1f4 , 0xd5e2dd41 , 0xe2a08209 , 0x2896ceba , 0x00000000 , 0xc00001f0 } ,
FinalRegs = new uint [ ] { 0x9c803ce5 , 0x38e325f9 , 0x4d32aea8 , 0x0120f77b , 0x8e34b507 , 0xee41aabf , 0x7e6d8a0c , 0x761a3f21 , 0x99b57f1d , 0x32a4bbf3 , 0x9902c1f4 , 0xd5e2dd41 , 0xe2a08209 , 0x2896ceba , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1c , 0x4f58 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xe9c3e9b7 , 0x26c9e052 , 0x708b6153 , 0x72dbdc3c , 0xdd3e922d , 0xd0260aca , 0x38dcf6be , 0x4164575f , 0x5d8e03dc , 0x30bfa694 , 0xe72a6609 , 0xba632c43 , 0x1f768178 , 0x6b4f56a6 , 0x00000000 , 0x600001f0 } ,
FinalRegs = new uint [ ] { 0xe9c3e9b7 , 0x26c9e052 , 0x708b6153 , 0x72dbdc3c , 0xdd3e922d , 0xd0260aca , 0x38dcf6be , 0x4164575f , 0x5d8e03dc , 0x30bfa694 , 0xe72a6609 , 0xba632c43 , 0x1f768178 , 0x6b4f56a6 , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea16 , 0x7f31 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x9205c1f5 , 0x80dd7e44 , 0x8ecd5272 , 0x3d8d3691 , 0x35d45cca , 0x4b2d9eb3 , 0xa1652285 , 0x6a1cb7f1 , 0x8e08b99f , 0xdf8f0c57 , 0x28dd0dfa , 0xf2c0abbd , 0x167a6539 , 0x75163a9d , 0x00000000 , 0xa00001f0 } ,
FinalRegs = new uint [ ] { 0x9205c1f5 , 0x80dd7e44 , 0x8ecd5272 , 0x3d8d3691 , 0x35d45cca , 0x4b2d9eb3 , 0xa1652285 , 0x6a1cb7f1 , 0x8e08b99f , 0xdf8f0c57 , 0x28dd0dfa , 0xf2c0abbd , 0x167a6539 , 0x75163a9d , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x4f80 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x96547d6c , 0x7afda83c , 0xb3edea2d , 0x49d05904 , 0xb661ef76 , 0xf1cce5ff , 0x2986ab1b , 0xcb39b044 , 0x88937ad3 , 0x962cf736 , 0x80d6f109 , 0xb73dd0d6 , 0xb93f9f60 , 0xb93a02c9 , 0x00000000 , 0xf00001f0 } ,
FinalRegs = new uint [ ] { 0x96547d6c , 0x7afda83c , 0xb3edea2d , 0x49d05904 , 0xb661ef76 , 0xf1cce5ff , 0x2986ab1b , 0xcb39b044 , 0x88937ad3 , 0x962cf736 , 0x80d6f109 , 0xb73dd0d6 , 0xb93f9f60 , 0xb93a02c9 , 0x00000000 , 0xb00001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea12 , 0x1f35 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xb1a94a51 , 0xa8679784 , 0xd7558ceb , 0x58d63d95 , 0x6e5cf7eb , 0x0d40398d , 0xf88fa339 , 0xbe88a56f , 0x7180f980 , 0x0795ba21 , 0x0732b252 , 0xa51be7c8 , 0x47c02749 , 0xb0fbbd9f , 0x00000000 , 0x800001f0 } ,
FinalRegs = new uint [ ] { 0xb1a94a51 , 0xa8679784 , 0xd7558ceb , 0x58d63d95 , 0x6e5cf7eb , 0x0d40398d , 0xf88fa339 , 0xbe88a56f , 0x7180f980 , 0x0795ba21 , 0x0732b252 , 0xa51be7c8 , 0x47c02749 , 0xb0fbbd9f , 0x00000000 , 0xa00001d0 } ,
} ,
// CMN (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1a , 0x4fc5 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xf4440521 , 0x26b151d9 , 0x90053d26 , 0x8c3bbde1 , 0x4a757fa1 , 0x34b63513 , 0xd1d1a182 , 0xa9123bc1 , 0xadfbf652 , 0xec28d3e6 , 0x6ca54af1 , 0x385d5637 , 0x46280bac , 0x18f38d39 , 0x00000000 , 0x400001f0 } ,
FinalRegs = new uint [ ] { 0xf4440521 , 0x26b151d9 , 0x90053d26 , 0x8c3bbde1 , 0x4a757fa1 , 0x34b63513 , 0xd1d1a182 , 0xa9123bc1 , 0xadfbf652 , 0xec28d3e6 , 0x6ca54af1 , 0x385d5637 , 0x46280bac , 0x18f38d39 , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x4fe4 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x20abeba4 , 0x77f9bd90 , 0x5c09b098 , 0xdebadd51 , 0x6e114dcf , 0xd8212cf8 , 0x2a6a57d2 , 0xb9667ed8 , 0x93817fef , 0x639cd8b4 , 0x52b67bce , 0x681ee61c , 0x50bb5414 , 0x9f297765 , 0x00000000 , 0x200001f0 } ,
FinalRegs = new uint [ ] { 0x20abeba4 , 0x77f9bd90 , 0x5c09b098 , 0xdebadd51 , 0x6e114dcf , 0xd8212cf8 , 0x2a6a57d2 , 0xb9667ed8 , 0x93817fef , 0x639cd8b4 , 0x52b67bce , 0x681ee61c , 0x50bb5414 , 0x9f297765 , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1d , 0x6f51 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x12b54404 , 0x9ad5df58 , 0x8a73af2a , 0xd89dd454 , 0x57f5a14b , 0xcee0a06f , 0xb53e67ca , 0x92730368 , 0xab12a843 , 0x929ae15d , 0xea1e4f49 , 0xd7fadfbc , 0x9defdd99 , 0xff22c9c8 , 0x00000000 , 0x600001f0 } ,
FinalRegs = new uint [ ] { 0x12b54404 , 0x9ad5df58 , 0x8a73af2a , 0xd89dd454 , 0x57f5a14b , 0xcee0a06f , 0xb53e67ca , 0x92730368 , 0xab12a843 , 0x929ae15d , 0xea1e4f49 , 0xd7fadfbc , 0x9defdd99 , 0xff22c9c8 , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea15 , 0x5f77 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x64dfdc90 , 0xd570bc25 , 0xae804ff7 , 0x491ad040 , 0xfe5f6d58 , 0x850c1223 , 0x39afac7b , 0xcc5a165a , 0x956a9473 , 0x89d3941f , 0x6e520e57 , 0x804dca75 , 0xbd40cde8 , 0xff68c0e7 , 0x00000000 , 0x700001f0 } ,
FinalRegs = new uint [ ] { 0x64dfdc90 , 0xd570bc25 , 0xae804ff7 , 0x491ad040 , 0xfe5f6d58 , 0x850c1223 , 0x39afac7b , 0xcc5a165a , 0x956a9473 , 0x89d3941f , 0x6e520e57 , 0x804dca75 , 0xbd40cde8 , 0xff68c0e7 , 0x00000000 , 0xb00001d0 } ,
} ,
// ADD (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1c , 0x4f0b , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x8a81d956 , 0x65b2b25b , 0x34dd981e , 0x924542f4 , 0xeed4b95a , 0x096d832c , 0x8ddcb715 , 0x2df1897b , 0x696d0d5c , 0xfa6853c1 , 0xcbb52912 , 0xe37a3fda , 0x54dd595d , 0x652e5a2b , 0x00000000 , 0x600001f0 } ,
FinalRegs = new uint [ ] { 0x8a81d956 , 0x65b2b25b , 0x34dd981e , 0x924542f4 , 0xeed4b95a , 0x096d832c , 0x8ddcb715 , 0x2df1897b , 0x696d0d5c , 0xfa6853c1 , 0xcbb52912 , 0xe37a3fda , 0x54dd595d , 0x652e5a2b , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea12 , 0x6faa , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x4b774bbf , 0xe1f3168c , 0xfcdf56d4 , 0x0a9feca9 , 0x8d832cd1 , 0x27af5bb2 , 0xe7123c8f , 0x5ae971a8 , 0x7c86287f , 0x5e69f0a7 , 0x43e672d3 , 0xb552a0f4 , 0xb8b4fc17 , 0xa9cc9a9d , 0x00000000 , 0x400001f0 } ,
FinalRegs = new uint [ ] { 0x4b774bbf , 0xe1f3168c , 0xfcdf56d4 , 0x0a9feca9 , 0x8d832cd1 , 0x27af5bb2 , 0xe7123c8f , 0x5ae971a8 , 0x7c86287f , 0x5e69f0a7 , 0x43e672d3 , 0xb552a0f4 , 0xb8b4fc17 , 0xa9cc9a9d , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea18 , 0x2f2c , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x907613be , 0x807d314f , 0x10328bb5 , 0xf3433f78 , 0x0fa6c190 , 0x473e8ac5 , 0x0019b12e , 0xa24d7590 , 0x0fdac8d5 , 0x24e4feea , 0xf5eadcbf , 0xdfd73f71 , 0xee2c8957 , 0xaef12e15 , 0x00000000 , 0x100001f0 } ,
FinalRegs = new uint [ ] { 0x907613be , 0x807d314f , 0x10328bb5 , 0xf3433f78 , 0x0fa6c190 , 0x473e8ac5 , 0x0019b12e , 0xa24d7590 , 0x0fdac8d5 , 0x24e4feea , 0xf5eadcbf , 0xdfd73f71 , 0xee2c8957 , 0xaef12e15 , 0x00000000 , 0x100001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea16 , 0x3f00 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x2f9a7f7c , 0xc6ad7d01 , 0x12b220a4 , 0x57b4e83c , 0x2132b566 , 0xb4afd045 , 0x2b5d39bf , 0xceeecd89 , 0x724bff21 , 0xb527620e , 0xa9fba943 , 0xd2d70658 , 0x4e69f57b , 0x55df6b8f , 0x00000000 , 0xf00001f0 } ,
FinalRegs = new uint [ ] { 0x2f9a7f7c , 0xc6ad7d01 , 0x12b220a4 , 0x57b4e83c , 0x2132b566 , 0xb4afd045 , 0x2b5d39bf , 0xceeecd89 , 0x724bff21 , 0xb527620e , 0xa9fba943 , 0xd2d70658 , 0x4e69f57b , 0x55df6b8f , 0x00000000 , 0x300001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea16 , 0x2fdb , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x854d0c91 , 0x895ded29 , 0x3e81cd89 , 0x9ed269cf , 0x8a7354fa , 0x95cfe79f , 0x07248663 , 0x3ec81b86 , 0x6f1086e0 , 0x51b4c91c , 0xb2d0946b , 0x1b81a616 , 0x2b03fe57 , 0xfbde03fd , 0x00000000 , 0x700001f0 } ,
FinalRegs = new uint [ ] { 0x854d0c91 , 0x895ded29 , 0x3e81cd89 , 0x9ed269cf , 0x8a7354fa , 0x95cfe79f , 0x07248663 , 0x3ec81b86 , 0x6f1086e0 , 0x51b4c91c , 0xb2d0946b , 0x1b81a616 , 0x2b03fe57 , 0xfbde03fd , 0x00000000 , 0x300001d0 } ,
} ,
// ADC (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1a , 0x3fe4 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x4333cbde , 0xb61e8731 , 0x2121c6ec , 0x796ecc75 , 0xb570472d , 0x203aa9ea , 0xdad7bf7e , 0x93654919 , 0x9e4c4e08 , 0x1e352004 , 0x104a06d7 , 0x6b9a4b8a , 0xa0bcd372 , 0x1713789a , 0x00000000 , 0xb00001f0 } ,
FinalRegs = new uint [ ] { 0x4333cbde , 0xb61e8731 , 0x2121c6ec , 0x796ecc75 , 0xb570472d , 0x203aa9ea , 0xdad7bf7e , 0x93654919 , 0x9e4c4e08 , 0x1e352004 , 0x104a06d7 , 0x6b9a4b8a , 0xa0bcd372 , 0x1713789a , 0x00000000 , 0x300001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1b , 0x3f40 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xad935c4c , 0x4c7dcbfc , 0x802965ca , 0x1dccd2e8 , 0xe960e9e1 , 0x3bff0055 , 0x204f6a43 , 0xe31b010d , 0x33c8f3c5 , 0x8e27b912 , 0x1351e4a6 , 0x90195167 , 0xd9112661 , 0xee319b51 , 0x00000000 , 0xe00001f0 } ,
FinalRegs = new uint [ ] { 0xad935c4c , 0x4c7dcbfc , 0x802965ca , 0x1dccd2e8 , 0xe960e9e1 , 0x3bff0055 , 0x204f6a43 , 0xe31b010d , 0x33c8f3c5 , 0x8e27b912 , 0x1351e4a6 , 0x90195167 , 0xd9112661 , 0xee319b51 , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea15 , 0x3fe8 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x26deb79f , 0x01ac9258 , 0x5982ae34 , 0x2c3c6df6 , 0xabf6a749 , 0x319d4b48 , 0xce8cca6d , 0xe4b70851 , 0x135c049c , 0xd8839d5e , 0xd3171a30 , 0xfb09e096 , 0x06d67a32 , 0x0bab9825 , 0x00000000 , 0x100001f0 } ,
FinalRegs = new uint [ ] { 0x26deb79f , 0x01ac9258 , 0x5982ae34 , 0x2c3c6df6 , 0xabf6a749 , 0x319d4b48 , 0xce8cca6d , 0xe4b70851 , 0x135c049c , 0xd8839d5e , 0xd3171a30 , 0xfb09e096 , 0x06d67a32 , 0x0bab9825 , 0x00000000 , 0x100001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea12 , 0x2fec , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xd2c9ebca , 0x3ace22dc , 0x41603f45 , 0x8cc7e2c2 , 0xa160b815 , 0xac1e7eb8 , 0x57c49232 , 0x62547a9b , 0xa18407fd , 0x5c549424 , 0xf3eec0e1 , 0x4185299f , 0x329a9063 , 0x649d9b44 , 0x00000000 , 0x900001f0 } ,
FinalRegs = new uint [ ] { 0xd2c9ebca , 0x3ace22dc , 0x41603f45 , 0x8cc7e2c2 , 0xa160b815 , 0xac1e7eb8 , 0x57c49232 , 0x62547a9b , 0xa18407fd , 0x5c549424 , 0xf3eec0e1 , 0x4185299f , 0x329a9063 , 0x649d9b44 , 0x00000000 , 0x100001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea15 , 0x2f73 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xf3f8be7b , 0x05e02ec4 , 0x78bd9fce , 0x6fb329c8 , 0x3094f103 , 0x7c93c61d , 0xaade3d9f , 0x381bf77c , 0x738389cd , 0xc68dc0e2 , 0x60a06e86 , 0x9b717afd , 0x9e51e4eb , 0xf7966699 , 0x00000000 , 0x500001f0 } ,
FinalRegs = new uint [ ] { 0xf3f8be7b , 0x05e02ec4 , 0x78bd9fce , 0x6fb329c8 , 0x3094f103 , 0x7c93c61d , 0xaade3d9f , 0x381bf77c , 0x738389cd , 0xc68dc0e2 , 0x60a06e86 , 0x9b717afd , 0x9e51e4eb , 0xf7966699 , 0x00000000 , 0x300001d0 } ,
} ,
// SBC (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1d , 0x3faa , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xd839dfb1 , 0x7cc5425c , 0xc55b5255 , 0x37b845aa , 0x59f892d4 , 0x7ef8e6ec , 0x3491a7fb , 0x87b88546 , 0x72b4c444 , 0x24cf48d7 , 0x7f530fb7 , 0x5b243902 , 0x6c39c38f , 0x10e3165c , 0x00000000 , 0x200001f0 } ,
FinalRegs = new uint [ ] { 0xd839dfb1 , 0x7cc5425c , 0xc55b5255 , 0x37b845aa , 0x59f892d4 , 0x7ef8e6ec , 0x3491a7fb , 0x87b88546 , 0x72b4c444 , 0x24cf48d7 , 0x7f530fb7 , 0x5b243902 , 0x6c39c38f , 0x10e3165c , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea12 , 0x1f7d , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xcd24aba8 , 0x1d7d0523 , 0xc150da45 , 0x2f7eb96b , 0x9c1ed9af , 0x75056b89 , 0x91c818d1 , 0x8a07d574 , 0x67ff1d4a , 0x6aca4429 , 0xc4b5fb7c , 0x21e9ca50 , 0xb95cbd15 , 0xce3752e7 , 0x00000000 , 0xb00001f0 } ,
FinalRegs = new uint [ ] { 0xcd24aba8 , 0x1d7d0523 , 0xc150da45 , 0x2f7eb96b , 0x9c1ed9af , 0x75056b89 , 0x91c818d1 , 0x8a07d574 , 0x67ff1d4a , 0x6aca4429 , 0xc4b5fb7c , 0x21e9ca50 , 0xb95cbd15 , 0xce3752e7 , 0x00000000 , 0x100001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea10 , 0x2fc2 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x401285a0 , 0x7ab1e348 , 0xf48a2615 , 0x46d49913 , 0xff5e9911 , 0x4b4d7920 , 0x8e1f921e , 0x05075455 , 0x24e4acea , 0x8652e355 , 0x11d0fe46 , 0x0cfe7c08 , 0xf326adee , 0x7fcde7ac , 0x00000000 , 0x600001f0 } ,
FinalRegs = new uint [ ] { 0x401285a0 , 0x7ab1e348 , 0xf48a2615 , 0x46d49913 , 0xff5e9911 , 0x4b4d7920 , 0x8e1f921e , 0x05075455 , 0x24e4acea , 0x8652e355 , 0x11d0fe46 , 0x0cfe7c08 , 0xf326adee , 0x7fcde7ac , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea16 , 0x3f22 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x5bb504b3 , 0x3dd293c9 , 0x3b2b2d7c , 0x30c2876a , 0x1c99a70e , 0x741294e7 , 0xfd5f7315 , 0x0149b9db , 0x3975aa1c , 0x9269e207 , 0xdc42fd14 , 0xea6a1c89 , 0xa03e7d65 , 0x171c30ad , 0x00000000 , 0xe00001f0 } ,
FinalRegs = new uint [ ] { 0x5bb504b3 , 0x3dd293c9 , 0x3b2b2d7c , 0x30c2876a , 0x1c99a70e , 0x741294e7 , 0xfd5f7315 , 0x0149b9db , 0x3975aa1c , 0x9269e207 , 0xdc42fd14 , 0xea6a1c89 , 0xa03e7d65 , 0x171c30ad , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1b , 0x1f86 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xe0f5bbe3 , 0xd96f3c62 , 0x11944b25 , 0x372e4b0e , 0x7c956b35 , 0x03df46ac , 0x8f11684b , 0x3044502e , 0x6ebf2992 , 0x4f3a0366 , 0x9f36f014 , 0x4c55f6aa , 0x6473e494 , 0x8b6310d6 , 0x00000000 , 0xe00001f0 } ,
FinalRegs = new uint [ ] { 0xe0f5bbe3 , 0xd96f3c62 , 0x11944b25 , 0x372e4b0e , 0x7c956b35 , 0x03df46ac , 0x8f11684b , 0x3044502e , 0x6ebf2992 , 0x4f3a0366 , 0x9f36f014 , 0x4c55f6aa , 0x6473e494 , 0x8b6310d6 , 0x00000000 , 0x200001d0 } ,
} ,
// CMP (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x6f45 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xe72e848a , 0x97499b66 , 0xcde944bc , 0xf6a7e4e1 , 0xd8860029 , 0xc55c7e43 , 0x58dc13d7 , 0x5e1cf6ac , 0x8094a819 , 0xdba64363 , 0xd8f5423f , 0x6ae843f0 , 0x69766600 , 0x2814e4e6 , 0x00000000 , 0x600001f0 } ,
FinalRegs = new uint [ ] { 0xe72e848a , 0x97499b66 , 0xcde944bc , 0xf6a7e4e1 , 0xd8860029 , 0xc55c7e43 , 0x58dc13d7 , 0x5e1cf6ac , 0x8094a819 , 0xdba64363 , 0xd8f5423f , 0x6ae843f0 , 0x69766600 , 0x2814e4e6 , 0x00000000 , 0x800001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x7fd8 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x323e5ef9 , 0x46e23bdf , 0x8d69d89a , 0x9ffddd37 , 0x53f4a07b , 0xe923f9bb , 0x5ea62678 , 0x1709127c , 0xc0c20492 , 0x0ee47a0c , 0xe137cc2e , 0x7d72db37 , 0xca9eb971 , 0x4447b224 , 0x00000000 , 0xe00001f0 } ,
FinalRegs = new uint [ ] { 0x323e5ef9 , 0x46e23bdf , 0x8d69d89a , 0x9ffddd37 , 0x53f4a07b , 0xe923f9bb , 0x5ea62678 , 0x1709127c , 0xc0c20492 , 0x0ee47a0c , 0xe137cc2e , 0x7d72db37 , 0xca9eb971 , 0x4447b224 , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea10 , 0x3f43 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x4cce7ac7 , 0x03055e03 , 0x479ec669 , 0x8b1d9783 , 0xa59509e1 , 0xa46866ef , 0x654578c4 , 0x700e322b , 0xa4191329 , 0xb1b8479a , 0xe555a2ce , 0x1ef22472 , 0xd41fb2ae , 0x2d794684 , 0x00000000 , 0x200001f0 } ,
FinalRegs = new uint [ ] { 0x4cce7ac7 , 0x03055e03 , 0x479ec669 , 0x8b1d9783 , 0xa59509e1 , 0xa46866ef , 0x654578c4 , 0x700e322b , 0xa4191329 , 0xb1b8479a , 0xe555a2ce , 0x1ef22472 , 0xd41fb2ae , 0x2d794684 , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea18 , 0x7fd2 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xeecfbfb2 , 0xbe6288fd , 0x34c0fc94 , 0x3a01b105 , 0xe7dc6252 , 0xc05813fa , 0x6613d82d , 0x90dc7a0c , 0x34637299 , 0x58f6d0e7 , 0xb151d65e , 0xca975eca , 0xf83b6533 , 0x10177f01 , 0x00000000 , 0x600001f0 } ,
FinalRegs = new uint [ ] { 0xeecfbfb2 , 0xbe6288fd , 0x34c0fc94 , 0x3a01b105 , 0xe7dc6252 , 0xc05813fa , 0x6613d82d , 0x90dc7a0c , 0x34637299 , 0x58f6d0e7 , 0xb151d65e , 0xca975eca , 0xf83b6533 , 0x10177f01 , 0x00000000 , 0x400001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x2f6e , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x54dcd0c5 , 0x629131da , 0xc4010f0b , 0xf28a7f0f , 0x866d92a3 , 0xbb9a1b32 , 0xc8c7f425 , 0x8d13d61f , 0x1f9a5d13 , 0x83e0b2b7 , 0x7ef44e14 , 0x24c291a3 , 0x851cc882 , 0x31a056cb , 0x00000000 , 0xb00001f0 } ,
FinalRegs = new uint [ ] { 0x54dcd0c5 , 0x629131da , 0xc4010f0b , 0xf28a7f0f , 0x866d92a3 , 0xbb9a1b32 , 0xc8c7f425 , 0x8d13d61f , 0x1f9a5d13 , 0x83e0b2b7 , 0x7ef44e14 , 0x24c291a3 , 0x851cc882 , 0x31a056cb , 0x00000000 , 0x500001d0 } ,
} ,
// SUB (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1a , 0x6f56 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xf997cd9f , 0xf94c5bd7 , 0x5411a289 , 0x21311b8f , 0xee8a1fe4 , 0x73808b62 , 0x4daadf68 , 0x14a1c57c , 0x92d98c4c , 0x31f999c9 , 0x953b94b9 , 0x108acc75 , 0xcc38ea73 , 0x5dc27e61 , 0x00000000 , 0x600001f0 } ,
FinalRegs = new uint [ ] { 0xf997cd9f , 0xf94c5bd7 , 0x5411a289 , 0x21311b8f , 0xee8a1fe4 , 0x73808b62 , 0x4daadf68 , 0x14a1c57c , 0x92d98c4c , 0x31f999c9 , 0x953b94b9 , 0x108acc75 , 0xcc38ea73 , 0x5dc27e61 , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea19 , 0x0f94 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x5f8de6f4 , 0x09e82020 , 0x480dc701 , 0xd3303ca3 , 0x8739e87a , 0x3da0b6d2 , 0x10093787 , 0xd30606fc , 0xd81d45da , 0xa66f5e86 , 0xd8ddf48e , 0xa8321bd1 , 0x62a75c1c , 0x3cffac30 , 0x00000000 , 0x800001f0 } ,
FinalRegs = new uint [ ] { 0x5f8de6f4 , 0x09e82020 , 0x480dc701 , 0xd3303ca3 , 0x8739e87a , 0x3da0b6d2 , 0x10093787 , 0xd30606fc , 0xd81d45da , 0xa66f5e86 , 0xd8ddf48e , 0xa8321bd1 , 0x62a75c1c , 0x3cffac30 , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea14 , 0x7fc6 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x001f39cf , 0x76b925c8 , 0x292b283a , 0x9d142282 , 0x2cda04fa , 0x87f29de5 , 0x9e9a98e4 , 0x9d48ddbb , 0x9ea329fd , 0x653f2346 , 0xfc116785 , 0x6e565e16 , 0x9a7f8c11 , 0x46f1ecbb , 0x00000000 , 0xd00001f0 } ,
FinalRegs = new uint [ ] { 0x001f39cf , 0x76b925c8 , 0x292b283a , 0x9d142282 , 0x2cda04fa , 0x87f29de5 , 0x9e9a98e4 , 0x9d48ddbb , 0x9ea329fd , 0x653f2346 , 0xfc116785 , 0x6e565e16 , 0x9a7f8c11 , 0x46f1ecbb , 0x00000000 , 0x500001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea19 , 0x5fa5 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xfb6a4a50 , 0xd074ee0e , 0x599131ef , 0x5db48236 , 0xf287fcd1 , 0xadea3b9f , 0xf2529f30 , 0x6717a5af , 0xe1a3bc40 , 0xd92e291b , 0x9b0337eb , 0xcab803ed , 0x255dd8a9 , 0xea0e7824 , 0x00000000 , 0xb00001f0 } ,
FinalRegs = new uint [ ] { 0xfb6a4a50 , 0xd074ee0e , 0x599131ef , 0x5db48236 , 0xf287fcd1 , 0xadea3b9f , 0xf2529f30 , 0x6717a5af , 0xe1a3bc40 , 0xd92e291b , 0x9b0337eb , 0xcab803ed , 0x255dd8a9 , 0xea0e7824 , 0x00000000 , 0xb00001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1c , 0x6f86 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x3a000492 , 0xc16be6fa , 0x20053393 , 0x597617c9 , 0xc30c0ac0 , 0x0ed34739 , 0xf964a3d4 , 0x4dcf9b40 , 0x93109692 , 0x7ed22040 , 0x1f57a26e , 0x008d29d2 , 0x99b2dae8 , 0xe8a14948 , 0x00000000 , 0x200001f0 } ,
FinalRegs = new uint [ ] { 0x3a000492 , 0xc16be6fa , 0x20053393 , 0x597617c9 , 0xc30c0ac0 , 0x0ed34739 , 0xf964a3d4 , 0x4dcf9b40 , 0x93109692 , 0x7ed22040 , 0x1f57a26e , 0x008d29d2 , 0x99b2dae8 , 0xe8a14948 , 0x00000000 , 0x200001d0 } ,
} ,
// RSB (reg)
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1a , 0x6f72 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x9a603e20 , 0x10004fe3 , 0x8c33bcef , 0x8a23db09 , 0x47244c0c , 0x53417661 , 0x6486ac8b , 0x5276c43b , 0x577f49a7 , 0x34542492 , 0xb4ac7c99 , 0x5de5cb55 , 0x8f6e1d72 , 0x077d4a02 , 0x00000000 , 0xe00001f0 } ,
FinalRegs = new uint [ ] { 0x9a603e20 , 0x10004fe3 , 0x8c33bcef , 0x8a23db09 , 0x47244c0c , 0x53417661 , 0x6486ac8b , 0x5276c43b , 0x577f49a7 , 0x34542492 , 0xb4ac7c99 , 0x5de5cb55 , 0x8f6e1d72 , 0x077d4a02 , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1b , 0x0ff3 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x6fdd73d7 , 0xc6c4c438 , 0x772312e2 , 0xa57de93f , 0xa1edd64b , 0x8ee41d33 , 0x85849a41 , 0xac34953a , 0xb3d7c6b5 , 0x439ceff1 , 0xa3096172 , 0x5d8f0654 , 0x2e2993a3 , 0xca221149 , 0x00000000 , 0x400001f0 } ,
FinalRegs = new uint [ ] { 0x6fdd73d7 , 0xc6c4c438 , 0x772312e2 , 0xa57de93f , 0xa1edd64b , 0x8ee41d33 , 0x85849a41 , 0xac34953a , 0xb3d7c6b5 , 0x439ceff1 , 0xa3096172 , 0x5d8f0654 , 0x2e2993a3 , 0xca221149 , 0x00000000 , 0x200001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1b , 0x1f34 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0xbefd78a5 , 0x6d071150 , 0xe9ce2c88 , 0x2251ed54 , 0x30610b17 , 0x6428697e , 0xf6e940a4 , 0x2395634f , 0xdabff1a3 , 0x89988d57 , 0x85dd20b0 , 0x2ca1311d , 0xcd0748d9 , 0xedf55a6f , 0x00000000 , 0x800001f0 } ,
FinalRegs = new uint [ ] { 0xbefd78a5 , 0x6d071150 , 0xe9ce2c88 , 0x2251ed54 , 0x30610b17 , 0x6428697e , 0xf6e940a4 , 0x2395634f , 0xdabff1a3 , 0x89988d57 , 0x85dd20b0 , 0x2ca1311d , 0xcd0748d9 , 0xedf55a6f , 0x00000000 , 0x000001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea16 , 0x5f83 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x57018e40 , 0xc4027d19 , 0x33a32bd7 , 0x6a75787a , 0x18f8569a , 0xbbf3a50d , 0x7f35656f , 0x66fbdad7 , 0x3aa48c57 , 0x39709ea2 , 0x5972e4ba , 0xb2c2c772 , 0x52f35620 , 0x7ef9f1d6 , 0x00000000 , 0xd00001f0 } ,
FinalRegs = new uint [ ] { 0x57018e40 , 0xc4027d19 , 0x33a32bd7 , 0x6a75787a , 0x18f8569a , 0xbbf3a50d , 0x7f35656f , 0x66fbdad7 , 0x3aa48c57 , 0x39709ea2 , 0x5972e4ba , 0xb2c2c772 , 0x52f35620 , 0x7ef9f1d6 , 0x00000000 , 0x100001d0 } ,
} ,
new PrecomputedThumbTestCase ( )
{
Instructions = new ushort [ ] { 0xea1a , 0x0fd8 , 0x4770 , 0xe7fe } ,
StartRegs = new uint [ ] { 0x79108ff6 , 0x0cb1e662 , 0x9eb9ffed , 0x1ee4d3de , 0x7a8fa20a , 0x1db7e216 , 0x6fc42752 , 0x9cb6cdad , 0xa497a582 , 0x654c446f , 0xcbb31efc , 0x601e6995 , 0xe328af35 , 0x824026e7 , 0x00000000 , 0xd00001f0 } ,
FinalRegs = new uint [ ] { 0x79108ff6 , 0x0cb1e662 , 0x9eb9ffed , 0x1ee4d3de , 0x7a8fa20a , 0x1db7e216 , 0x6fc42752 , 0x9cb6cdad , 0xa497a582 , 0x654c446f , 0xcbb31efc , 0x601e6995 , 0xe328af35 , 0x824026e7 , 0x00000000 , 0x100001d0 } ,
} ,
} ;
}
}